当前位置: 代码迷 >> Android >> 异步加载 重定向出有关问题求大神帮助
  详细解决方案

异步加载 重定向出有关问题求大神帮助

热度:5   发布时间:2016-05-01 12:34:24.0
异步加载 重定向出问题求大神帮助
这个问题折腾了我一个下午,结果还是没解决。
主要代码 :
	private void updateBusinessItemInfoList() {
new Thread(new Runnable() {

@Override
public void run() {
// TODO Auto-generated method stub

if (ShopsActivity.this.businessItemInfoList.size() < 800) {
ShopsActivity.this.businessItemInfoListTemp = ShopsActivity.this
.getBusinessInfo();
} else {
ShopsActivity.this.businessItemInfoListTemp = null;
}

try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

Message message = new Message();
message.what = 1;
//ShopsActivity.this.getHandler().sendMessage(message);
ShopsActivity.this.getHandler().sendEmptyMessageDelayed(message.what, 0);
message = null;
}

}).start();
}



private Handler createHandler() {
Handler handler = new Handler() {

@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// TODO Auto-generated method stub
switch (msg.what) {
case 1:
if (businessItemInfoListTemp != null) {
//System.out.println("businessItemInfoListTemp---categoryId==0---Thread->"+Thread.currentThread().getId());
//问题出在下面两名
ShopsActivity.this.businessItemInfoList.addAll(businessItemInfoListTemp);
ShopsActivity.this.businessItemAdapter.notifyDataSetChanged();
ShopsActivity.this.loading.setVisibility(View.GONE);
ShopsActivity.this.refreshable = true;
} else {
ShopsActivity.this.loading.setVisibility(View.GONE);
Toast.makeText(ShopsActivity.this,"所有商家都已列出",Toast.LENGTH_LONG).show();
}
break;
case 2:
Intent intent = new Intent();
intent.setClass(ShopsActivity.this, ShopsActivity.class);
ShopsActivity.this.startActivity(intent);
break;
default:
break;
}

}
};
return handler;
}



public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
init();
updateBusinessItemInfoList();
}




/**
 * 绑定类别
 */
private void BindCategoryGv()
{
GvCategoryShops = (GridView)findViewById(R.id.GvCategoryShops);
final List<Category> listCat = new CategoryDao().getCategoryList(0);

final List<Map<String,Object>>  listItemsCat = new ArrayList<Map<String,Object>>();
for(Category item:listCat)
{
Map<String,Object> listItem = new HashMap<String,Object>();
listItem.put("categoryName", item.getCat_name());
listItemsCat.add(listItem);
}
SimpleAdapter simpleAdapter = new SimpleAdapter(this
, listItemsCat 
, R.layout.category_list
, new String[]{"categoryName"}
, new int[]{R.id.TvCategoryNameCategoryList});
GvCategoryShops.setAdapter(simpleAdapter);
GvCategoryShops.setOnItemClickListener(new OnItemClickListener(){
  相关解决方案