我的NavigationView XML是:
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
android:background="@drawable/drawer_img"
>
<include layout="@layout/nav_header_navigation" /> </android.support.design.widget.NavigationView>
我的java代码是:
TextView tv_inicio = (TextView)findViewById(R.id.home_inicio);
tv_inicio.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
System.out.println("Home Incio Clicked .");
}
});
OnClick Listener无法正常工作..只有这出现在调试模式下 &#34; D / ViewRootImpl:ViewPostImeInputStage ACTION_DOWN&#34; 我的页眉布局是我在导航视图中包含的。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="vertical"
android:id="@+id/frame_layout"
>
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_centerHorizontal="true"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:layout_weight="1"
android:layout_gravity="center_horizontal"
android:src = "@drawable/menu_logo_03" />
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="130dp"
>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="center_horizontal"
>
<TextView
android:id="@+id/home_inicio"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="0dp"
android:drawableLeft="@drawable/inicio"
android:layout_gravity="center|center_horizontal"
/>
<TextView
android:id="@+id/enventos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/eventos"
android:layout_gravity="center"
/>
<TextView
android:id="@+id/dm_menu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/dm"
android:layout_gravity="center"
/>
<TextView
android:id="@+id/barrios"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/barrios"
/>
<TextView
android:id="@+id/gremios"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/gremios"
/>
<TextView
android:id="@+id/proyectos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/proyectos"
/>
<TextView
android:id="@+id/daniel_medios"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/danielme"
/>
<TextView
android:id="@+id/conoce"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/conoce"
/>
<TextView
android:id="@+id/radio"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:drawableLeft="@drawable/radio"
/>
</LinearLayout>
</ScrollView>
</RelativeLayout>
代码正在运行,我可以获取这些textview的ID。但是onClick Listener无法正常工作..
任何帮助将不胜感激。
答案 0 :(得分:0)
您应该像这样在app:headerLayout
添加标题,而不是单独的包含布局:
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_height="match_parent"
android:layout_width="wrap_content"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer_view"/>
答案 1 :(得分:0)
如果我理解你的意图,你可能想要在点击按钮时打印文本。如果这就是您的意思,请尝试在Logcat屏幕中显示您的文本,而不是在命令提示符中显示,如下所示:
Log.d("significant index", "your text");
而不是:
System.out.println("Home Incio Clicked .");