2011-12-31 109 views
1

我想创建一个布局,其中顶部,底部另一个将在那里,并在这两个栏之间的一个列表视图,但问题是这里是,顶部和底部栏之间,我需要显示项目列表,其中顶部和底部栏将在那里,只有listview将滚动。需要显示顶部和底部栏之间的项目列表,

下面是我的xml布局,对于冗长的问题抱歉,任何建议将不胜感激。由于

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:gravity="center_vertical" 
    style="@android:style/ButtonBar" 
> 
    <ImageButton 
     android:id="@+id/IBADDNEW" 
     android:layout_width="62dp" 
     android:layout_height="62dp" 
     android:src="@drawable/ad_user_l" /> 

    <EditText 
     android:id="@+id/ETSEARCHTEXT" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" > 

     <requestFocus /> 
    </EditText> 

    <ImageButton 
     android:id="@+id/IBSEARCH" 
      android:layout_width="62dp" 
     android:layout_height="62dp" 
     android:src="@drawable/search_64" /> 

</LinearLayout> 

    <ScrollView 

    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:layout_weight="1" 
    android:fillViewport="true" 

> 

     <LinearLayout 
      android:id="@+id/LLforList" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity ="center_vertical" 
      android:orientation="horizontal" > 

      <ImageView 
      android:id="@+id/IVimageIcon" 
      android:layout_width="60dp" 
      android:layout_height="60dp" 
      android:src="@drawable/ic_farmer" /> 

     <TextView 
      android:id="@+id/TVFLNAME" 
      android:layout_width="match_parent" 
      android:layout_height="80dp" 
      android:text="Some Name" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 
     </LinearLayout> 

    </ScrollView> 

    <RelativeLayout 
    android:id="@+id/relativeLayout1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/blankbarbottom" 
    android:layout_alignParentBottom="true" > 


    <LinearLayout 
     android:id="@+id/FLlayoutLIst" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:orientation="horizontal" > 

     <ImageView 
      android:id="@+id/btnMainMenu" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@null" 
      android:src="@drawable/mainmenu_on" /> 

     <ImageView 
      android:id="@+id/btnSettings" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@null" 
      android:src="@drawable/settings_off" /> 

     <ImageButton 
      android:id="@+id/btnExit" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@null" 
      android:src="@drawable/exit_off" /> 
    </LinearLayout> 
</RelativeLayout> 

回答

1

使用一个ListView您的列表。它是可滚动的,所以你不需要ScrollView。请参阅http://developer.android.com/resources/tutorials/views/hello-listview.html关于如何通过适配器使用简单的ListView。

而且您还应该为Tabs使用TabHost。看看http://developer.android.com/resources/tutorials/views/hello-tabwidget.html

+0

你有没有看过这个问题。 – AAnkit 2011-12-31 06:29:06

+0

我做到了。你应该考虑一下我的答案......你应该学会使用正确的UI元素。 – mseo 2011-12-31 06:33:47

+0

所以我如何设置一个固定的酒吧,与简单的列表视图,我需要显示不同的行与不同的图像..我怎么会实现它 – AAnkit 2011-12-31 06:53:58

0

我思,你可以使用listView.addheadview和listView.addrootview 编辑:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
> 
<LinearLayout 
android:layout_width="fill_parent" 
android:layout_alignParentTop="true" 
android:layout_height="36dip" 
android:orientation="horizontal" 
android:background="@drawable/cloth_xixian_bg" 
android:id="@+id/headclothesroom"> 
<Button android:id="@+id/redianroom" 
    android:layout_width="100dip" 
    android:layout_height="36dip" 
    android:layout_marginLeft="40dip" 
    android:background="@null" 
    android:textSize="18sp" 
    android:textColor="@drawable/color_wenzi_bg" 
    android:text="热点排行"/> 
<Button android:id="@+id/liangyiroom" 
    android:layout_width="100dip" 
    android:layout_height="36dip" 
    android:textColor="@drawable/color_wenzi_bg" 
    android:textSize="18sp" 
    android:background="@null" 
    android:layout_marginLeft="25dip" 
    android:text="我的靓衣间" /> 


 <Button android:id="@+id/preButton" 
       android:layout_width="90dip" 
       android:layout_height="46dip" 
       android:layout_alignParentLeft="true" 
       android:layout_marginLeft="9dip" 
       android:text="前页" 
       android:layout_marginTop="1dip" 
       android:background="@drawable/btn_default" 
       android:textColor="#FFFFFF" 

       /> 
    <Button android:id="@+id/midchoth" 
       android:layout_width="90dip" 
       android:layout_height="46dip" 
       android:layout_marginLeft="12dip" 
       android:background="@drawable/btn_default" 
       android:layout_marginTop="1dip" 
       android:textColor="#FFFFFF" 
       android:visibility="invisible" 
       android:text="继续" 
       /> 
     <Button android:id="@+id/backbu" 
       android:layout_width="90dip" 
       android:layout_height="46dip" 
       android:layout_marginLeft="12dip" 
       android:background="@drawable/btn_default" 
        android:layout_marginTop="1dip" 
       android:textColor="#FFFFFF" 
       android:text="后页" 
       /> 
    </LinearLayout> 

+0

页眉和页脚将不会停留在他们的位置。他们将滚动列表。 – mseo 2011-12-31 06:27:36

1

您可以创建要添加为Header和ListView控件的Footer,然后你可以将它们添加到ListView布局,

View header = getLayoutInflater().inflate(R.layout.header, null); 
View footer = getLayoutInflater().inflate(R.layout.footer, null); 
ListView listView = getListView(); 
listView.addHeaderView(header); 
listView.addFooterView(footer); 
setListAdapter(new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_single_choice, 
       android.R.id.text1, names)); 
+0

它似乎有帮助,我可以做一个listActivity,并通过扩展BaseAdapter适配器,在这同样的活动,我可以做你提到的以下内容。 – AAnkit 2011-12-31 06:33:50

+0

您可以在扩展ListActivity的同一个类中创建一个扩展BaseAdapter的子类。 – 2011-12-31 06:37:59

+0

谢谢Lalit,让我试试看,会尽快回复你。 – AAnkit 2011-12-31 06:38:57

0

您需要充气的ListView中的XML项目。创建新的XML说inflate.xml用下面的代码:

<?xml version="1.0" encoding="utf-8"?> 
<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" 
    android:padding="5dp" > 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginRight="5dp" 
     android:src="@drawable/icon" > 
    </ImageView> 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="TextView" > 
    </TextView> 

</LinearLayout> 

现在,在您的活动类ListActivity扩展它,并为此

创建字符串数组说“物品”与多个“第l名” S作为在给定的白色屏幕等

String[] items = {"First L Name","First L Name","First L Name"}; 

然后,

setContentView(R.layout.main); 
setListAdapter(new NewListAdapter(this)); 

扩展的NewL istAdapter类像ArrayAdapter任何适配​​器,这样做

现在运行你的代码,看看神奇的...

0

我做到了这里我的自我是针对病因的精确解,在layour我添加了一个ListView的

 <ListView 
     android:id="@+id/LVfarmerList" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" > 
    </ListView> 

代替

 <ScrollView 

    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:layout_weight="1" 
    android:fillViewport="true" 

> 

     <LinearLayout 
      android:id="@+id/LLforList" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity ="center_vertical" 
      android:orientation="horizontal" > 

      <ImageView 
      android:id="@+id/IVimageIcon" 
      android:layout_width="60dp" 
      android:layout_height="60dp" 
      android:src="@drawable/ic_farmer" /> 

     <TextView 
      android:id="@+id/TVFLNAME" 
      android:layout_width="match_parent" 
      android:layout_height="80dp" 
      android:text="Some Name" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 
     </LinearLayout> 

    </ScrollView> 

,创造一个更版式是

<LinearLayout 
     android:id="@+id/LLforList" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity ="center_vertical" 
     android:orientation="horizontal" > 

     <ImageView 
     android:id="@+id/IVimageIcon" 
     android:layout_width="60dp" 
     android:layout_height="60dp" 
     android:src="@drawable/ic_farmer" /> 

    <TextView 
     android:id="@+id/TVFLNAME" 
     android:layout_width="match_parent" 
     android:layout_height="80dp" 
     android:text="Some Name" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 
    </LinearLayout> 

现在创建了一个活动(不是活动)

其中我显示了布局,其中有顶部和底部栏之间的列表视图。

并通过使用另一个布局创建了一个customAdapter,该布局具有一个imageview和textview。

通过listview.setAdapter,将此适配器添加到列表视图中,并且它为我工作。

相关问题