我正在尝试在我的Activity上显示来自DataObject的数据。一切正常,不会在任何地方崩溃,但我的观点不会随信息更新。 我是android上的begginner,我知道这个...... 请有人帮帮我吗?感谢
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
LayoutInflater inflater = LayoutInflater.from(DetailActivity.this);
vp = (RelativeLayout)inflater.inflate(R.layout.activity_detail, null);
String object_id = getIntent().getStringExtra("getIn"); // Get object_id from Intent
DataQuery query = DataQuery.get("Id");
query.getInBackground(object_id, new GetCallback<DataObject>() {
@Override
public void done(DataObject object, DataException e) {
if (e == null) {
TextView price = (TextView)vp.findViewById(R.id.priceD);
price.setText((String) object.get("price"));
TextView productD = (TextView)vp.findViewById(R.id.productD);
productD.setText((String) object.get("product"));
ImageView thumbnail= (ImageView)vp.findViewById(R.id.thumbnail2);
thumbnail.setImageBitmap((Bitmap) object.get("image"));
TextView descriptionD = (TextView)vp.findViewById(R.id.description );
descriptionD.setText((String) object.get("description"));
// }
} else {
// Error
}
}
});
答案 0 :(得分:0)
您可以简单地使用:
finish();
startActivity(getIntent());
从内部刷新Activity
。
答案 1 :(得分:0)
当你有setContent to Activity时,你为什么要再次膨胀相同的XML? 删除这些行:
LayoutInflater inflater = LayoutInflater.from(DetailActivity.this);
vp = (RelativeLayout)inflater.inflate(R.layout.activity_detail, null);
在查找视图时也删除其引用。只需使用:
TextView price = (TextView)findViewById(R.id.priceD);
目前,您在后台方法中的更改会更改在充气视图内的视图,而不会在“活动”视图中更改视图,因此更改不可见。删除上面的代码,它将正常工作。