2011-04-19 70 views
0

我有一个搜索布局。在屏幕中,有一个搜索框,并在搜索框下方显示搜索结果。Android空消息放置问题

<?xml version="1.0" encoding="utf-8"?> 
<TableLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:gravity="center_horizontal" 
     android:background="#FFFFFF" 
     android:stretchColumns="0" > 
     <TableRow 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:focusable="true" 
      android:paddingTop="5dp" 
      android:focusableInTouchMode="true">    
      <EditText 
       android:id="@+id/searchword" 
       android:textSize="14sp" 
       android:layout_height="wrap_content" 
       android:layout_width="fill_parent" 
       android:drawableLeft="@drawable/icon_search" 
       android:hint="@string/text_searchword"> 
      </EditText> 
     </TableRow> 
     <TableRow 
      android:id="@+id/listbox" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:background="#FFFFFF"> 
      <LinearLayout  
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content"> 
       <ListView 
        android:id="@+id/android:list" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent"> 
       </ListView> 
       <LinearLayout 
        android:id="@android:id/empty"    
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent"> 
        <TextView 
         android:id="@+id/emptytext" 
             android:layout_width="fill_parent" 
         android:layout_height="wrap_content" 
         android:textColor="#818185" 
         android:textSize="25sp" 
         android:textStyle="bold" 
         android:background="#FFFFFF" 
         android:text="@string/empty_res" 
         android:gravity="center_horizontal" 
         android:paddingLeft="6dip" 
        /> 
       </LinearLayout> 
      </LinearLayout> 
     </TableRow> 
</TableLayout> 

我想的是,搜索结果只显示在搜索框后,但如果没有搜索结果,空的消息应该来为搜索结果中的块的垂直中心。但是我没有把它垂直移动中心。它如何安排消息垂直中心?

+4

“massage”是指“** message **”? – OcuS 2011-04-19 07:21:16

回答

2

尝试使用此布局:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" 
    android:background="#FFFFFF"> 

    <EditText 
     android:id="@+id/searchword" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:paddingTop="5dp" 
     android:textSize="14sp" 
     android:drawableLeft="@drawable/icon_search" 
     android:hint="@string/text_searchword" /> 

    <FrameLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 

     <ListView 
      android:id="@+id/android:list" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" /> 

     <TextView 
      android:id="@+id/emptytext" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:gravity="center" 
      android:textColor="#818185" 
      android:textSize="25sp" 
      android:textStyle="bold" 
      android:text="@string/empty_res" 
      android:paddingLeft="6dip" 
      android:visibility="gone" /> 
    </FrameLayout> 
</LinearLayout> 

你必须根据搜索结果来改变列表的和文本视图的可视性。

+0

它不工作...它正在消失名单 – 2011-04-21 10:25:01

+0

对不起,似乎我误解了你的问题。我已经更新了我的答案。希望它能帮助你。 – Michael 2011-04-21 11:24:06