我的activity.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    tools:context="com.myactionbar.actionbar.MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

    <!-- Enable this layout on clicking the icon in actionbar -->
    <RelativeLayout
        android:id="@+id/rl_ListView1"
        android:layout_width="100dp"
        android:layout_height="match_parent"
        android:layout_weight="0.5"
        android:background="@color/black"
        android:visibility="invisible">
    </RelativeLayout>

</RelativeLayout>


Main.xml-它在操作栏上显示一个图标

<item
        android:id="@+id/show_info"
        android:orderInCategory="100"
        android:title="@string/search"
        app:showAsAction="always"
        android:icon="@drawable/ic_icon"
        />


单击操作栏中的ic_icon图标时,我需要使用Relativelayout显示隐藏的id=rl_ListView1

我不知道如何在单击操作栏中的项目时找到具有ID的布局。

请帮我做到这一点。

最佳答案

您需要在我们的活动中覆盖onOptionsItemSelected方法

public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();

    if (id == android.R.id.home) {

        //Code for showing layout
    }

    return super.onOptionsItemSelected(item);
}


=========
更新

if (id == R.id.show_info) {

if(r1.getVisibility()== View.VISIBLE)
{
               //Hide your layout
}
else
{
  //Show your layout
}

07-26 03:02