2011-11-27 54 views
0

我尝试在顶部显示该书的名称和作者,并列出有关该书在Android中的一些评论。显示列表项和一些文字浏览的Android布局

我已经使用ArrayAdapter来列出评论,因此我无法理解我应该在布局中将name-author textview对象放在哪里。

我的布局和相关的java代码如下。我认为应该有另一种观点,它应该包含name-author textview对象并包括list_item layout,但我不确定,因为它是我的第一个Android应用程序。

@Override 
protected void onPostExecute(Void result) { 
     progressDialog.dismiss(); 
     setListAdapter(new ReviewListAdaptor(
       ReviewListActivity.this, R.layout.list_item, reviewList)); 

} 

private class ReviewListAdaptor extends ArrayAdapter<Review> { 
     private ArrayList<Review> reviewList; 
     public ReviewListAdaptor(Context context,int textViewResourceId,ArrayList<Review> items) { 
        super(context, textViewResourceId, items); 
        this.reviewList = items; 
     } 
     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 
       View v = convertView; 
       if (v == null) { 
         LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
         v = vi.inflate(R.layout.list_item, null); 
       } 
       Review o = reviewList.get(position); 
       TextView tt = (TextView) v.findViewById(R.id.toptext); 
       TextView bt = (TextView) v.findViewById(R.id.bottomtext); 
       tt.setText(o.header); 
       bt.setText(o.message); 
       return v; 
     } 
    } 

list_item.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="?android:attr/listPreferredItemHeight" 
    android:orientation="vertical" 
    android:padding="6dip"> 


     <TextView 
      android:id="@+id/toptext" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_vertical" 
      android:textSize="12dp" 
      /> 

     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/bottomtext" 
      android:textSize="10dp" 
      /> 
</LinearLayout> 

回答

0

对于你的任务,你有三种选择:

  1. 让这本书,笔者在活动的用的setTitle()

标题在另外两起案件中显示不使用ListActivity类,因为你的Activity将会更多。

  1. 具有的选择停靠(不滚动)一书的作者标题:在这种情况下,你的Activity的布局看起来somethink这样的:

    [页眉项目]

而且您必须获取对列表(和标题项目)的引用,并设置该列表的适配器(并设置标题项目的内容):

ListView myList = (ListView)findViewById(R.id.myListView); 
myList.setAdapter([your adapter instance]); 
  1. 你想要一个滚动离开,并给出空间列表的标题。在这种情况下,你不能使用ListView,因为在Android中不支持滚动内滚动。我不会发布代码,你可能不想要这个。如果你这样做,你必须从一个滚动视图开始,添加一个线性布局,在这个线性布局中添加你的头部,并且为列表项目添加一个占位符(线性布局)。然后为每个数据项目填充列表项视图,并将这些元素添加到占位符。
1

你可以做一个新的视图既textviews使用您的自定义adaper评论列表,并使用this项目把两者在其他自定义适配器。阅读.txt,你应该能够解决你的问题。

相关问题