[英]Cardview onclick opens a new activity
單擊卡片會打開一個活動,然后單擊另一張卡片會打開另一個活動,依此類推。 有沒有辦法只創建一個活動並識別點擊的卡片的 ID 並顯示其相應的數據?
您可以使用Intent.putExtra
發送 id,然后在您的活動中使用Intent.getIntExtra
獲取它並在活動中提供您的數據
這是一個示例,如果您使用的是ListView
,則將 id 和索引發送到 MyActtivity :
AdapterView.OnItemClickListener onItemClickListener = new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(getApplicationContext(),MyActivity.class);
intent.putExtra("id",view.getId());
intent.putExtra("index",position);
startActivity(intent);
}
};
您可以像這樣在 MyActivity 中檢索它:
Intent intent = new Intent(getIntent());
int id = intent.getIntExtra("id",0);
int index = intent.getIntExtra("index",0);
public class FirstActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
}
public void card(View view) {
Intent intent = new Intent(FirstActivity.this, ActivitymainActivity.class);
startActivity(intent);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.