亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

想在View中弄個LIstVIew,直接將View還是當作布局文件操作是否可以?

是 新建一個類讓它去實現ListView要做的就行了,然后再將布局文件顯示是這個View就可以了???

求教,謝謝!!

正在回答

2 回答

今天剛剛回答了這個問題。??梢灾苯影裿iew當作布局view里面包含listview,更簡單粗暴的是直接往viewpager里加listview;

上思路:xml文件里只有一個viewpager ?--> ?繼承pageradapter重寫相應方法 --> ?將listview初始化 ? --> ?將listview作為viewpager的初始化參數加入進去 -->搞定

0 回復 有任何疑惑可以回復我~
#1

愛3 提問者

我也是按第一種思路寫,但是運行后那個view里是空空的,什么都沒有
2016-08-25 回復 有任何疑惑可以回復我~
#2

iMcLaren 回復 愛3 提問者

沒有初始化listview吧?
2016-08-25 回復 有任何疑惑可以回復我~
#3

愛3 提問者 回復 iMcLaren

private ListView listView; listView =()findViewById(); 有的
2016-08-26 回復 有任何疑惑可以回復我~
#4

iMcLaren 回復 愛3 提問者

嗯嗯,然后你去設置適配器就可以了
2016-08-28 回復 有任何疑惑可以回復我~
#5

愛3 提問者

非常感謝!
2016-08-29 回復 有任何疑惑可以回復我~
#6

iMcLaren 回復 愛3 提問者

嘿0.0
2016-08-29 回復 有任何疑惑可以回復我~
查看3條回復
import?android.app.Activity;
import?android.content.Context;
import?android.os.Bundle;
import?android.support.v4.view.PagerAdapter;
import?android.support.v4.view.ViewPager;
import?android.util.Log;
import?android.view.View;
import?android.view.ViewGroup;
import?android.widget.BaseAdapter;
import?android.widget.ListView;
import?android.widget.TextView;

import?java.util.ArrayList;
import?java.util.List;

import?hison.myapplication.R;
import?hison.myapplication.vp_adapter.MoocQuestionAdapter;
import?hison.myapplication.vp_adapter.MyViewPagerAdapter;
import?hison.myapplication.vp_adapter.QuestionAdapter;

/**
?*?Created?by?Administrator?on?8-24-0024.
?*/
public?class?MoocQuestionActivity?extends?Activity?{
????private?Context?context;
????private?ViewPager?viewPager;
????private?MyListAdapter?listviewAdapter;
????private?MyPagerAdapter?pageAdapter;
????private?List<String>?list;
????private?List<ListView>?list_listview;
????@Override
????protected?void?onCreate(Bundle?savedInstanceState)?{
????????super.onCreate(savedInstanceState);
????????setContentView(R.layout.question_activity);
????????init();
????}

????private?void?init(){
????????context?=?this;
????????viewPager?=?(ViewPager)?findViewById(R.id.vp_question);
????????list?=?new?ArrayList<>();
????????int?i?=0;
????????while(i?<?10){
????????????list.add("item"+i);
????????????i++;
????????}
????????//viewpager里有兩個頁面,這是第一個頁面的listview
????????ListView?listView?=?new?ListView(this);
????????listviewAdapter?=?new?MyListAdapter(list,context);
????????listView.setAdapter(listviewAdapter);

????????//第二個頁面的listview
????????ListView?listView1?=?new?ListView(this);
????????listView1.setAdapter(listviewAdapter);

????????//初始化list<ListView>?把上面的listview添加進去,作為pageAdapter的參數
????????list_listview?=?new?ArrayList<>();
????????list_listview.add(listView);
????????list_listview.add(listView1);

????????//pageAdapter適配器
????????pageAdapter?=?new?MyPagerAdapter(list_listview);
????????viewPager.setAdapter(pageAdapter);

????}
}

//viewpage的適配器
class?MyPagerAdapter?extends?PagerAdapter?{
????private?List<ListView>?listViews;

????public?MyPagerAdapter(List<ListView>?listViews)?{
????????this.listViews?=?listViews;
????}

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

????@Override
????public?boolean?isViewFromObject(View?view,?Object?object)?{
????????return?view?==?object;
????}

????@Override
????public?Object?instantiateItem(ViewGroup?container,?int?position)?{
????????//?TODO?Auto-generated?method?stub
????????container.addView(listViews.get(position));
????????return?listViews.get(position);
????}

}

//listview的適配器
class?MyListAdapter?extends?BaseAdapter?{
????private?List<String>?list;
????private?Context?context;

????public?MyListAdapter(List<String>?list,?Context?context){
????????this.list?=?list;
????????this.context?=?context;
????}
????@Override
????public?int?getCount()?{
????????return?list.size();
????}

????@Override
????public?Object?getItem(int?i)?{
????????return?list.get(i);
????}

????@Override
????public?long?getItemId(int?i)?{
????????return?i;
????}

????@Override
????public?View?getView(int?i,?View?view,?ViewGroup?viewGroup)?{
????????if(view==null){
????????????ViewHolder?viewHolder?=?new?ViewHolder();
????????????view?=?View.inflate(context,?R.layout.item_question,null);
????????????viewHolder.textView?=?(TextView)?view.findViewById(R.id.tv_question);
????????????viewHolder.textView.setText(list.get(i));
????????????view.setTag(viewHolder);
????????}else{
????????????ViewHolder?viewHolder?=?(ViewHolder)?view.getTag();
????????????viewHolder.textView.setText(list.get(i));
????????}
????????return?view;
????}

????class?ViewHolder{
????????TextView?textView;
????}
}


xml文件
<?xml?version="1.0"?encoding="utf-8"?>
<LinearLayout?xmlns:android="http://schemas.android.com/apk/res/android"
????android:orientation="vertical"?android:layout_width="match_parent"
????android:layout_height="match_parent">
????<android.support.v4.view.ViewPager
????????android:layout_width="match_parent"
????????android:layout_height="match_parent"
????????android:id="@+id/vp_question">
????</android.support.v4.view.ViewPager>
</LinearLayout>


1 回復 有任何疑惑可以回復我~
#1

愛3 提問者

厲害厲害
2016-08-25 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Android攻城獅的第二門課(第1季)
  • 參與學習       111145    人
  • 解答問題       1560    個

本課程由淺入深地帶您學會Android的常用控件的開發和使用

進入課程

想在View中弄個LIstVIew,直接將View還是當作布局文件操作是否可以?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號