android - 如何使页脚可点击并在其上设置监听器?

标签 android listview footer

这是 Activity

private View footer;
private Button btnmore;

linear = (LinearLayout) findViewById(R.id.layout_content);
    linear.setVisibility(View.VISIBLE);

    LayoutInflater liInflater = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    linear.addView(liInflater.inflate(R.layout.main_particularcategoryallnewslist, null));
linear.addView(liInflater.inflate(R.layout.main_particularcategoryallnewslistfv, null));
    footer = (View)getLayoutInflater().inflate(R.layout.main_particularcategoryallnewslistfv, null);
btnmore = (Button)findViewById(R.id.btn_more); 

ListView lv = (ListView) findViewById(android.R.id.list);
SimpleAdapter adapter = new SimpleAdapter(this, fillMaps,
            R.layout.main_particularcategoryallnewslist, from, to);
    lv.addFooterView(footer); <-- how to set footer being clickable?
    lv.setAdapter(adapter);

在页脚中,我有一个按钮,但我在上面设置了监听器也没有响应,我认为页脚必须启用才能被点击,然后才能点击按钮。

lv.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            Intent intent = new Intent(Main_ParticularCategoryAllNews.this,
                    Main_ParticularNewsDetail.class);
            bundle = new Bundle();
            bundle.putInt("newsid", newsid[arg2]);
            intent.putExtras(bundle);
            startActivity(intent);
        }
    });

    btnmore.setOnClickListener(new OnClickListener() {
        public void onClick(View arg0) {
            if (isOnline() == true) {
                linear2.setVisibility(View.VISIBLE);
                AlphaAnimation alpha = new AlphaAnimation(0.5F, 0.5F);
                alpha.setDuration(15);
                alpha.setFillAfter(true);
                linear.startAnimation(alpha);
                btnrefresh.setVisibility(View.INVISIBLE);
                webservice.UpdateMoreCatNews(catnewsid);
                int secondsDelayed = 3;
                new Handler().postDelayed(new Runnable() {
                    public void run() {
                        startActivity(new Intent(Main_ParticularCategoryAllNews.this,
                                Main_AllLatestNews.class));
                        finish();
                    }
                }, secondsDelayed * 1000);
            } else {
                toast = Toast
                        .makeText(
                                Main_ParticularCategoryAllNews.this,
                                "Your device is not connect to internet, fail to update news!",
                                Toast.LENGTH_SHORT);
                toast.setGravity(Gravity.CENTER_VERTICAL
                        | Gravity.CENTER_HORIZONTAL, 0, 0);
                toast.show();
            }
        }
    });

如何在点击页脚时设置监听器?

最佳答案

listview 和 button 争夺焦点,listview 获胜。

在页脚上设置以下内容。 false 告诉页脚它是不可选择的:

 mylistView.addFooterView(footerView, null, **false**);

或者,您可以按照 FireDevil 的建议使用 OnClickListener

关于android - 如何使页脚可点击并在其上设置监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10476982/

相关文章:

android - 如何在 Android map 上将相机移动到最大缩放级别

android - 以编程方式发送带有附件的电子邮件时出现问题

android - 如何在 flutter 中调用 Layouts?

android - CheckBox 使 listView 项目不可点击

android - 为什么android中有ListVIew?

css - 页脚无法正常显示并隐藏页面底部的内容

android - 在不使用 smoothScrollToPosition 的情况下转到 Listview 中的项目

android - 如何通过 Kotlin 在 ListView 上获取已检查的 ID?

css - 页脚内容未显示在移动 View 中

css - 如何在 CSS 中制作带有固定页眉和页脚的 2 列布局?