Android上的主 - 细节布局

时间:2012-04-03 09:32:23

标签: android layout master-detail

我有一个应用,其中一个标签有一个任务列表。我的意图是,当我点击该列表中的一个元素时,我想看到该任务的细节。是否可以在同一页面中查看该任务的列表和详细信息?我正在使用Eclipse。

3 个答案:

答案 0 :(得分:0)

您可以通过浏览视图及其可见性/大小来自行编码。 或者您可以使用片段:http://developer.android.com/guide/topics/fundamentals/fragments.html

答案 1 :(得分:0)

yon可以在列表视图项目上打开PopupWindow点击并显示所选项目的详细信息。在项目上点击see

打开PopupWindow

答案 2 :(得分:0)

如果由于某种原因你不想使用片段(例如你不会重复使用这个视图),你也可以这样做 - 简单易行:

这将是您的分屏布局splitscreen.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/linearLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" >

    <LinearLayout
        android:id="@+id/task_list_wrap"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:padding="2dp" >

        <ListView
            android:id="@+id/task_list"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:overScrollMode="never" >
        </ListView>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/task_details"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical">

        <TextView
            android:id="@+id/task_details_description"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="this is description text" />
    </LinearLayout>

</LinearLayout>

如果在您的活动中单击任务列表,您将更改任务详细信息面板的内容:

setContentView(R.layout.splitscreen);
ListView taskList= (ListView) findViewById(R.id.task_list);
TextView taskDescription = (TextView) findViewById(R.id.task_details_description);
taskList.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view,
        int position, long id) {
        int selectedTask = position;
        updateTaskDescription(selectedTask, taskDescription);
    }
});