实现可以横向滑动的Listview

原创
2012/08/03 14:15
阅读数 2.8W

其实做法很简单就是在你的listview的外部加一个HorizontalScrollView就行了

main.xml如下

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent" >

    <HorizontalScrollView

        android:id="@+id/horizontalScrollView1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_alignParentTop="true">

        <LinearLayout

            android:layout_width="match_parent"

            android:layout_height="match_parent"

            android:orientation="horizontal" >

            <ListView 

                android:layout_width="match_parent"

                android:layout_height="match_parent"

                android:id="@+id/listview"></ListView>

        </LinearLayout>

    </HorizontalScrollView>

        

</RelativeLayout>


activity.java如下
public class FirstListView extends Activity {
private ListView lv;
private List<String> items=new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
lv=(ListView)findViewById(R.id.listview);
for (int i = 0; i < 20; i++) {
items.add("fengluchun"+i);
}
lv.setAdapter(new MyAdapter());
}

class MyAdapter extends BaseAdapter{

@Override
public int getCount() {
return items.size();
}

@Override
public Object getItem(int position) {
return null;
}

@Override
public long getItemId(int position) {
return 0;
}
LayoutInflater inflater=LayoutInflater.from(FirstListView.this);
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view=null;
if (convertView==null) {
view=inflater.inflate(R.layout.listformat, null);
}else {
view=convertView;
}
TextView tv1=(TextView)view.findViewById(R.id.textView1);
TextView tv2=(TextView)view.findViewById(R.id.textView2);
TextView tv3=(TextView)view.findViewById(R.id.textView3);
tv1.setText(items.get(position));
tv2.setText(items.get(position));
tv3.setText(items.get(position));
return view;
}
}
}

你可以试试哦!

展开阅读全文
打赏
1
4 收藏
分享
加载中

引用来自“雨焰”的评论

引用来自“nilopen”的评论

不知道你楼主的布局代码没有分享完全,三个TextView的布局应该是怎么样的,我按照自己的方式将三个TextView放在一个布局文件中用linearlayout实现,发现运行结果不过,请楼主指教

http://pan.baidu.com/share/link?shareid=2331663079&uk=3674817364

完整的找不到了,这个你套到你的程序试试

谢谢,我试试
2013/07/31 14:37
回复
举报
雨焰博主

引用来自“nilopen”的评论

不知道你楼主的布局代码没有分享完全,三个TextView的布局应该是怎么样的,我按照自己的方式将三个TextView放在一个布局文件中用linearlayout实现,发现运行结果不过,请楼主指教

http://pan.baidu.com/share/link?shareid=2331663079&uk=3674817364

完整的找不到了,这个你套到你的程序试试
2013/07/04 11:47
回复
举报
不知道你楼主的布局代码没有分享完全,三个TextView的布局应该是怎么样的,我按照自己的方式将三个TextView放在一个布局文件中用linearlayout实现,发现运行结果不过,请楼主指教
2013/07/04 11:36
回复
举报
更多评论
打赏
3 评论
4 收藏
1
分享
返回顶部
顶部