Android - 标题栏和操作栏在自定义列表项膨胀后消失 xml
Android - Titlebar and Actionbar is gone after inflate xml for custom list items
我想创建一个包含自定义项的列表。因此,我在本教程中创建了一个新的 list_item.xml :
http://www.tutorialsbuzz.com/2014/03/watsapp-custom-listview-imageview-textview-baseadapter.html
在我的 activity_main.xml 它在 Android Studio 中是这样显示的:
但是在模拟器中是这样显示的,没有titleBar,也没有actionBar:
我的list_item.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="2dp">
<ImageView
android:id="@+id/profile_pic"
android:layout_width="70dp"
android:layout_height="70dp"
android:contentDescription="desc"
android:paddingLeft="10dp"
android:paddingRight="10dp" />
<TextView
android:id="@+id/alias"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_toRightOf="@+id/profile_pic"
android:paddingBottom="10dp"
android:text="txt"
android:textSize="20sp" />
<TextView
android:id="@+id/public_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="txt"
android:textSize="16sp"
android:layout_below="@+id/alias"
android:layout_toEndOf="@+id/profile_pic" />
<TextView
android:id="@+id/contact_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="txt"
android:textSize="16sp"
android:layout_alignBottom="@+id/alias"
android:layout_alignParentEnd="true" />
</RelativeLayout>
我的activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:theme="?attr/actionBarTheme"
android:minHeight="?attr/actionBarSize"
android:id="@+id/main_toolbar" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/ic_locked"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:layout_marginStart="13dp"
android:id="@+id/btn_lock" />
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/main_toolbar"
android:layout_alignParentStart="true"
android:id="@+id/contact_list" />
</RelativeLayout>
</android.support.design.widget.CoordinatorLayout>
自定义适配器等其他代码与教程中的代码相同,只是重命名了一些variables/ids。我的 MainActivity.java 也扩展了 AppCompatActivity 除了 Activity.
试试这个布局,为了让工具栏显示在 Coordinator 布局中,
它必须在 AppBarLayout 内(这又必须是 CL 的第一个 Child)
剩余的内容视图可以是任何带有 ScrollFlags 的布局
<android.support.design.widget.CoordinatorLayout
<AppbarLayout>
<toolbar>
</AppBarLayout>
//Main Content View
<RelativeLayout
app:scroll_flags = "@string/scrollingBehaviour"-->this is important`
</RelativeLayout>
我想创建一个包含自定义项的列表。因此,我在本教程中创建了一个新的 list_item.xml : http://www.tutorialsbuzz.com/2014/03/watsapp-custom-listview-imageview-textview-baseadapter.html
在我的 activity_main.xml 它在 Android Studio 中是这样显示的:
但是在模拟器中是这样显示的,没有titleBar,也没有actionBar:
我的list_item.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="2dp">
<ImageView
android:id="@+id/profile_pic"
android:layout_width="70dp"
android:layout_height="70dp"
android:contentDescription="desc"
android:paddingLeft="10dp"
android:paddingRight="10dp" />
<TextView
android:id="@+id/alias"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_toRightOf="@+id/profile_pic"
android:paddingBottom="10dp"
android:text="txt"
android:textSize="20sp" />
<TextView
android:id="@+id/public_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="txt"
android:textSize="16sp"
android:layout_below="@+id/alias"
android:layout_toEndOf="@+id/profile_pic" />
<TextView
android:id="@+id/contact_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="txt"
android:textSize="16sp"
android:layout_alignBottom="@+id/alias"
android:layout_alignParentEnd="true" />
</RelativeLayout>
我的activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:theme="?attr/actionBarTheme"
android:minHeight="?attr/actionBarSize"
android:id="@+id/main_toolbar" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/ic_locked"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:layout_marginStart="13dp"
android:id="@+id/btn_lock" />
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/main_toolbar"
android:layout_alignParentStart="true"
android:id="@+id/contact_list" />
</RelativeLayout>
</android.support.design.widget.CoordinatorLayout>
自定义适配器等其他代码与教程中的代码相同,只是重命名了一些variables/ids。我的 MainActivity.java 也扩展了 AppCompatActivity 除了 Activity.
试试这个布局,为了让工具栏显示在 Coordinator 布局中, 它必须在 AppBarLayout 内(这又必须是 CL 的第一个 Child)
剩余的内容视图可以是任何带有 ScrollFlags 的布局
<android.support.design.widget.CoordinatorLayout
<AppbarLayout>
<toolbar>
</AppBarLayout>
//Main Content View
<RelativeLayout
app:scroll_flags = "@string/scrollingBehaviour"-->this is important`
</RelativeLayout>