可能需要在一个Activity中显示多个ViewPager,如GridView或ListView中以ViewPager做Item。
在Fragment的onCreateView函数中添加断点,结果发现只有第一个ViewPager的Fragment被初始化了。
排查发现在FragmentPagerAdapter中的instantiateItem函数中FragmentManager以container的id加fragment的position为标记。导致第一个ViewPager的position初始化后进了缓存,第二个ViewPager的position1就直接从缓存中获取数据
最近写的一个商城APP,布局比较复杂,其中有需要使用到Recyclerview嵌套RecyclerView的地方。 另外,本例子使用的Adapter框架为BaseQuickAdapter 。如果有使用到其他的Adapter框架需要自己适当修改。
BaseQuickAdapter 框架 Github地址: >
现在我是要把listview(每个item包含服务器中获取的和自己定义的一个顺序号)中的每一项item中的所有数据传到另一个Activity中,然后显示出来。但是我现在出现的问题是显示不出来。我是菜鸟一个,希望各路大神帮我解决一下,看一下我的代码哪里出问题了,还有另一个activity接收参数那边应该怎么写。下面是我的代码
private ListView myQQ;
private byte pic;
public String[] names = new String[]{"01", "02", "03", "04", "05"};
private SimpleAdapter adapter=null;
private List<Map<String, Object>> items=new ArrayList<Map<String,Object>>();
private Bitmap bitmap;
protected void onCreate(Bundle savedInstanceState) {
superonCreate(savedInstanceState);
setContentView(Rlayoutcanyin);
Intent intent=getIntent();
Bundle bundle=intentgetExtras();
int length = bundlegetInt("length");
byte pic[] = bundlegetByteArray("data");
final Bitmap bitmap= BitmapFactorydecodeByteArray(pic,0,length);
int w = bitmapgetHeight();
int h = bitmapgetWidth();
Logd("taoyouyou", "w : " + w + ", h : " + h);
myQQ = (ListView) findViewById(RidmyQQ);//获取到下拉列表
for (int i = 0; i < 10; i++) {
Map<String, Object> item = new HashMap<String, Object>();
itemput("icon",bitmap);
itemput("name", names[i]);
thisitemsadd(item);
}
thisadapter = new SimpleAdapter(this, thisitems, Rlayoutitem, new String[] {"icon", "name" }, new int[] { Ridicon, Ridname });
thismyQQsetAdapter(thisadapter);
adaptersetViewBinder(new ViewBinder() {
@Override
public boolean setViewValue(View view, Object data,
String textRepresentation) {
if(view instanceof ImageView ){
ImageView iv=(ImageView)view;
ivsetImageBitmap(bitmap);
return true;
}else{
return false;
}
}
});
thismyQQsetOnItemClickListener(new OnItemClickListenerImpl());
}
public class OnItemClickListenerImpl implements OnItemClickListener {
public void onItemClick(AdapterView<> arg0, View arg1, int arg2,
long arg3) {
Intent intent=new Intent(canyinthis,discountclass);
Map<String, String> map = (Map<String, String>)myQQgetItemAtPosition(arg2);
intentputExtra("bitmap", mapget("bitmap"));
intentputExtra("name", mapget("names"));
startActivity(intent);
}}<map<map</map</map
主activity从数据库查询数据后显示到listview列表里,然后点击listview列表的其中一项后可以跳转到另一个activity并把当前项的内容显示到这个activity中。下面是我写的部分主要代码。
SQLiteDatabase db = new dbhelper(DiaryListthis, "DiarBookdb", null, 1)
getWritableDatabase();
Cursor c = dbrawQuery("select from DiaryList", null);
SimpleCursorAdapter adapter = new SimpleCursorAdapter(DiaryListthis,
Rlayoutlistuse, c,
new String[] { "_id", "title", "context" }, new int[] {
Ridtitleo, Ridtitlep, Ridtitleq });
setListAdapter(adapter);
这个是提取数据库内容然后显示在列表里
list = thisgetListView();
listsetOnItemClickListener(new AdapterViewOnItemClickListener() {
public void onItemClick(AdapterView<> parent, View view,
int position, long id) {
Map<String, Object> map = (Map<String, Object>) list
getItemAtPosition(position);
String userid = mapget("_id")toString();
String name = mapget("title")toString();
String age = mapget("context")toString();
然后利用Intent传数据我会,主要就是上面Map那里总报错,求大神啊!
}
});
1、获取选中值要通过spinner的setOnItemSelectedListener()事件来 *** 作,根据spinner绑定值的方式的不一样,获取选中值的方式略有不同。
2、如果没有用实体层绑定数据的话,诸如通过
SimpleAdapter adapter = new SimpleAdapter(
HRInputBase_Activitythis, items, Rlayoutsp_item,
new String[] { "text", "value" }, new int[] {
Ridsp_text, Ridsp_value });
sp_privincesetAdapter(adapter);
这种方式绑定的。获取的方式为:
TextView ProvinceTxt = (TextView) sp_privincegetSelectedView()
findViewById(Ridsp_value); // 得到选中的选项Id
String codeString = ProvinceTxtgetText()toString();
如果使用的是实体层的话,在setOnItemSelectedListener()事件中根据点击的索引值获取相对应的实体类,然后从实体类中获取对应得Code和Value值,相对来说,使用实体层更加的方便,代码整洁。
3、两者都使用的是Adapter数据集的绑定,主要是考察对adapter的知识,可以对这方面多学习一点。
以上就是关于一个Adapter可以被多个Activity共用么全部的内容,包括:一个Adapter可以被多个Activity共用么、RecyclerView嵌套RecyclerView的子控件点击事件获取、android listview的单击某行时候数据是从别的activity里面一个线程传输过来,接收的时候顺序不对等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)