【问题标题】:Add ExpandableListView to a tab with other elements将 ExpandableListView 添加到具有其他元素的选项卡
【发布时间】:2010-11-11 17:09:27
【问题描述】:

我正在开发一个带有标签的应用程序。在其中一个选项卡上, 我有两个EditText 字段和几个按钮。我想添加一个ExpandableListView 到选项卡,在其余元素下方。

我的问题是当前类扩展了Activity。我找到的所有示例都扩展ExpandableListActivity,但我不能为同一个类扩展两者。

如何将此列表添加到选项卡?我在XML 文件中添加了一个ExpandableListView 元素,但是每当我运行它时,它都不会出现。我知道我需要将视图绑定到一些数据,但是我该怎么做呢? 谢谢。

这是我的课程代码:

public class DirectionsTab extends Activity 
{
    private Button clear_btn;
    private Button go_btn;
    private EditText origin_txt;
    private EditText dest_txt;

    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.directions_tab);

        // initialize views and onClick event handler
        origin_txt = (EditText)findViewById(R.id.origin_txt);
        dest_txt = (EditText)findViewById(R.id.dest_txt);
        clear_btn = (Button)findViewById(R.id.clear_btn);
        // clear all text fields and return focus to dest_txt
        clear_btn.setOnClickListener(new OnClickListener(){ 
            @Override
            public void onClick(View v)
            {
             origin_txt.setText("");
             dest_txt.setText(""); 
             origin_txt.requestFocus(); 
            }    
        });        
    } // end public void onCreate(Bundle savedInstanceState)
} // end public class DirectionsTab extends Activity 

和 XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView
        android:id="@+id/origin_lbl"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Origin"/>
    <EditText
        android:id="@+id/origin_txt"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@android:drawable/editbox_background"
        android:layout_below="@id/origin_lbl"/>

    <TextView
        android:id="@+id/dest_lbl"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/origin_txt"
        android:text="Destination" />
    <EditText
        android:id="@+id/dest_txt"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@android:drawable/editbox_background"
        android:layout_below="@id/dest_lbl" />    

    <ExpandableListView
     android:id="@+id/listView"      
     android:layout_below="@+id/dest_txt" 
     android:layout_height="wrap_content"
     android:layout_width="wrap_content" /><!--android:id="@android:id/list"-->

    <Button style="?android:attr/buttonStyleSmall"
        android:id="@+id/clear_btn"        
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/dest_txt"
        android:layout_alignParentRight="true"
        android:layout_marginLeft="10dip"        
        android:layout_marginTop="10dip"
        android:text="Clear" />
    <Button style="?android:attr/buttonStyleSmall"
        android:id="@+id/go_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"        
        android:layout_toLeftOf="@id/clear_btn"
        android:layout_alignTop="@id/clear_btn"
        android:text="Go!" />
</RelativeLayout>

【问题讨论】:

    标签: android tabs expandablelistview expandablelistadapter


    【解决方案1】:

    我知道了!,如果有人对此有疑问,请确保按照以下步骤操作:

    1. 复制并粘贴ExpandableList3 示例(位于Android SDK Samples 文件夹中的ApiDemos 项目中)。这只是如何设置列表的一个很好的示例。
    2. 让您的类继承自 ExpandableListActivity
    3. 在您的 XML 布局文件中创建以下内容:

      <ExpandableListView
      android:id="@android:id/list"       
      android:layout_below="@+id/go_btn" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent"
      android:layout_weight="1"/>
      

    ID 属性与您在上面看到的相匹配是非常重要的,否则,什么都不会起作用。这个小细节浪费了我很多时间,并且在 android 文档中作为一个小细节被发现整齐地摆放。

    【讨论】:

      猜你喜欢
      • 2011-03-24
      • 1970-01-01
      • 2012-03-04
      • 2017-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-22
      相关资源
      最近更新 更多