【问题标题】:Android NavigationView Headerlayout's view elements are not triggering click eventsAndroid NavigationView Headerlayout 的视图元素没有触发点击事件
【发布时间】:2017-09-05 09:17:50
【问题描述】:

我正在尝试创建类似 gmail 的导航视图。在标题布局中,我有一个图像视图和两个文本视图。我已经为 TextView 注册了点击事件。但是当我点击 onClick 方法时,监听器没有触发(代码在 Kotlin 中)

navigation_view 是我的 NavigationView 的 id

var headerView = navigation_view.getHeaderView(0)

var accountName: TextView = headerView.findViewById(R.id.account_name)

accountName.setOnClickListener { Toast.makeText(this, "Redirect to login", Toast.LENGTH_LONG).show() } 

当我点击 textView 并且drawerLayout 关闭时,toast 永远不会显示。

【问题讨论】:

  • 我正在尝试获取 headerView 项目的点击触发器。不是导航菜单项。即使我注册了 navigationView.setNavigationItemSelectedListener(this) 也无济于事

标签: android kotlin drawerlayout navigationview kotlin-android-extensions


【解决方案1】:

这样试试

 NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);

    View view = navigationView.getHeaderView(0);


   TextView account_name = (TextView) view.findViewById(R.id.account_name);

    account_name.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Toast.makeText(HomeActivity.this,"Clicked",Toast.LENGTH_LONG).show();
        }
    });

【讨论】:

    猜你喜欢
    • 2012-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-05
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多