[英]How to add click listener in listview footer view button
我已經創建了一個帶有列表視圖的活動,並在語法上添加了頁腳視圖。 頁腳視圖包含兩個按鈕(后退和下一個)。 問題是,當我單擊按鈕時,它不會觸發點擊事件,但是當我專注於View(footerview)時,它會觸發點擊事件。
這是我的代碼,
listView.addFooterView(footer_controls,null,true); Button NextButton =(Button) footer_controls.findViewById(R.id.btnNext); NextButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(context, "forward clicked", Toast.LENGTH_LONG).show(); LoadData(); } });
提前致謝。
在添加頁腳視圖之前,請編寫OnclickListener並確保將xml內的focusable =“ false”設置為根布局
在用於使footer_controls膨脹的xml布局中,嘗試將android:descendantFocusability="blocksDescendants"
放在最高的根視圖上
例如
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants"
android:orientation="vertical" >
<Button ...>
<!--Other Views -->
</LinearLayout>
嘗試以下對我有用的代碼...無需持有人調用您的按鈕,您可以直接找到viewbyid,如下
listSearchResult = (ListView) findViewById(R.id.listSearchResult);
footerView1 = View.inflate(this, R.layout.no_listing_found, null);
listSearchResult.addFooterView(footerView1,null,false);
Button NextButton =(Button) findViewById(R.id.btnNext);
NextButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(context, "forward clicked", Toats.LENGTH_LONG).show();
LoadData();
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.