0

我想并排显示多个ListViews(水平),并且每个ListViews都可以自己滚动,滚动一个不会改变其他人的滚动位置并扩展它,而不是Android I中的常规检查按钮想使用我的图像。

PS:我在这里使用 HoneyComb。

这是我想要的示例屏幕截图。

对于我应该如何进行的任何帮助将不胜感激。这是我的视图xml。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:splitMotionEvents="true">
    <ListView android:id="@+id/list1" android:layout_width="0dip" android:layout_height="match_parent" android:layout_weight="1" />
    <ListView android:id="@+id/list2" android:layout_width="0dip" android:layout_height="match_parent" android:layout_weight="1" />
    <ListView android:id="@+id/list3" android:layout_width="0dip" android:layout_height="match_parent" android:layout_weight="1" />
</LinearLayout>

在此处输入图像描述

4

1 回答 1

2

Java 代码:

public class DesignMain extends Activity {
/** Called when the activity is first created. */
LazyAdapter dealAdapter;
static ViewHolder holder;
ListView list,list1,list2;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    list=(ListView)findViewById(R.id.userdeal);
    list1=(ListView)findViewById(R.id.userdeal1);
    list2=(ListView)findViewById(R.id.userdeal2);
    dealAdapter = new LazyAdapter(DesignMain.this,sCheeseStrings);
    list.setAdapter(dealAdapter);
    list1.setAdapter(dealAdapter);
    list2.setAdapter(dealAdapter);
}
class LazyAdapter extends BaseAdapter {
    LayoutInflater mInflater;       
    String name;
    String TAG = "MultiLine";
    int i = -1;
    int j = -1;
    int k = -1;
    String[] VAL1,VAL2,VAL3,VAL4,VAL5,VAL6,VAL7;

    public LazyAdapter(Context context, String[] value1) {
        try {
            mInflater = LayoutInflater.from(context);
            VAL1 = value1;
        } catch (Exception e) {
            Log.v(TAG, "dom" + e);
        }
    }
    public int getCount() {
        return VAL1.length;
    }
    public Object getItem(int arg0) {
        return arg0;
    }
    public long getItemId(int arg0) {
        return arg0;
    }
    public View getView(int position, View convertView, ViewGroup arg2) {
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.list, null);
        holder = new ViewHolder();
        holder.text1 = (TextView) convertView.findViewById(R.id.listtext);
        convertView.setTag(holder);
    } else {
        holder.text1 = (TextView) convertView.findViewById(R.id.listtext);
    }
    holder.text1.setText(VAL1[position]);
    return convertView;
} 
}
static class ViewHolder {
    TextView text1, text2, text3,text4,text_time;
    ImageView icon;
}
static final String[] sCheeseStrings = {"Hushallsost", "Iberico", "Idaho Goatster",
    "Idiazabal", "Il Boschetto al Tartufo", "Ile d'Yeu", "Isle of Mull", "Jarlsberg",
    "Jermi Tortes", "Jibneh Arabieh", "Jindi Brie", "Jubilee Blue", "Juustoleipa",
    "Kadchgall", "Kaseri", "Kashta", "Kefalotyri"
    };
static final String[] sCheeseStrings1 = {"Cabecou", "Caboc", "Cabrales", "Cachaille", "Caciocavallo", "Caciotta",
    "Caerphilly", "Cairnsmore", "Calenzana", "Cambazola", "Camembert de Normandie",
    "Canadian Cheddar", "Canestrato", "Cantal", "Caprice des Dieux", "Capricorn Goat",
    "Capriole Banon", "Carre de l'Est", "Casciotta di Urbino", "Cashel Blue", "Castellano"
    };
static final String[] sCheeseStrings2 = {"Abbaye de Belloc", "Abbaye du Mont des Cats", "Abertam", "Abondance", "Ackawi",
    "Acorn", "Adelost", "Affidelice au Chablis", "Afuega'l Pitu", "Airag", "Airedale",
    "Aisy Cendre", "Allgauer Emmentaler", "Alverca", "Ambert", "American Cheese",
    "Ami du Chambertin", "Anejo Enchilado", "Anneau du Vic-Bilh", "Anthoriro", "Appenzell"
    };

}

主.xml

<LinearLayout   xmlns:android="http://schemas.android.com/apk/res/android"
                android:orientation="vertical"  android:layout_width="wrap_content" 
                android:layout_height="fill_parent">
    <LinearLayout   xmlns:android="http://schemas.android.com/apk/res/android"
                    android:orientation="horizontal"
                    android:layout_width="wrap_content" android:layout_height="fill_parent">
    <ListView       android:id="@+id/userdeal" android:listSelector="@drawable/list1" 
                    android:cacheColorHint="#00000000" android:layout_width="120dip" 
                    android:layout_height="fill_parent" />      
    <ListView       android:id="@+id/userdeal1" android:listSelector="@drawable/list1" 
                    android:cacheColorHint="#00000000" android:layout_width="100dip" 
                    android:layout_height="fill_parent" />     
    <ListView       android:id="@+id/userdeal2" android:listSelector="@drawable/list1" 
                    android:cacheColorHint="#00000000" android:layout_width="100dip" 
                    android:layout_height="fill_parent" />       
</LinearLayout>

列表.xml:

<LinearLayout   xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:orientation="vertical" android:layout_width="fill_parent"
                android:layout_height="fill_parent" android:layout_marginLeft="10dip" android:id="@+id/lay_txt">
   <TextView    android:id="@+id/listtext" android:textSize="15sp"
                android:textColor="#FFFFFF"
                android:layout_width="wrap_content" android:layout_height="20dip"
                android:ellipsize="end" android:layout_marginTop="15dip" android:text="Card No" />
  <RadioButton  android:id="@+id/select_card" android:layout_width="wrap_content" 
                android:layout_height="wrap_content"  android:layout_alignParentRight="true"
                android:focusable="false"/>
</RelativeLayout>

于 2011-03-19T04:37:31.657 回答