NavigationView的headerLayout中點擊事件



DrawerLayout NavigationView 配合起來非常簡單就能做出抽屜效果

 

在navigation_header 屬性中 app:headerLayout="@layout/navigation_header"   可以指定上部分的布局    app:menu="@menu/drawer"  可以設置下部分菜單

 

下面的菜單的點擊事件 可以 用  setNavigationItemSelectedListener  來實現

 

而上面的部分 沒有方法,想想也是,因為上面的部分  谷歌根本不知道你會布局什么,而下面的已經固定了。

 

此時,如果我希望點擊頭像產生事件,我首先要找到頭像,而 head_iv 在布局 navigation_header 中,navigation_header 又在 NavigationView 中定義了。 所以首先要取消 app:headerLayout ,在邏輯代碼中設置headview,再從headview找到head_iv,再設置點擊事件。

 

View headview=navigationView.inflateHeaderView(R.layout.navigation_header);

ShapedImageView head_iv= (ShapedImageView) headview.findViewById(R.id.head_iv);

head_iv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                showToast("head iv");
            }
        });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM