[英]How to pass value from one Adapter to another Activity
ItemPriceAdapter類
從這個適配器類中,我想使用意圖將值傳遞給另一個活動。 我在代碼中找不到問題,因此請幫助我確定從此適配器類向其他活動發送一些值。 下面是我的代碼:
holder.like.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (holder.like.isChecked()){
int likecount = 0;
likecount++;
Intent intent = new Intent(mcontext, ItemDetailActivity.class);
intent.putExtra("Likes", likecount+"");
}
}
});
}
當我單擊此喜歡圖標時,我想增加喜歡的數量並將這些喜歡發送到另一個活動,以顯示該商品給出了多少個喜歡。
ItemDetailActivity類
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_item_detail);
databaseHelper = new DatabaseHelper(this);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
String like = getIntent().getStringExtra("Likes");
Toast.makeText(this, like+"", Toast.LENGTH_SHORT).show();
}
});
我的吐司面包中的值不為零。
您缺少startActivity(intent)
試試這個
if (holder.like.isChecked()){
int likecount = 0;
likecount++;
Intent intent = new Intent(mcontext, ItemDetailActivity.class);
intent.putExtra("Likes", likecount+"");
context.statrActivity(intent);
}
您已經創建了一個Intent,但尚未啟動它。
確保使用先前創建的意圖調用startActivity。
請像這樣更正您的代碼
Intent intent = new Intent(mcontext, ItemDetailActivity.class);
intent.putExtra("Likes", likecount+"");
mcontext.startActivity(intent);
然后在onCreate()中執行此操作
String like = getIntent().getExtras().getString("Likes");
您需要在適配器中傳遞context
以啟動Intent
if (holder.like.isChecked()){
int likecount = 0;
likecount++;
Intent intent = new Intent(mcontext, ItemDetailActivity.class);
intent.putExtra("Likes", likecount+"");
mContext.startActivity(intent);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.