问题描述
我有两个活动(Activity A,Activity B
,在Activity A
中我有一个EditText,Button and Image View
,在活动B 中,我有一个列表视图并且listView视图包含带有ImageView,TextView,and Another TextView
在活动A中,我在编辑文本(Ex : Apple)
中输入列表名称,然后在GridView (Ex an Apple Image )
中选择一个图像
我将Edittext和ImageView都传递到一个新的Activity,我想在ListView中显示这些名称(Apple和Apple Image)。
我想显示类似的内容(我从上一个活动中获得了杂货清单和图像,并且想在ListView中显示(在listview中,我还添加了Count TEXTVIEW)
firstActivity.Java
done.setonClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String itemname = listname.getText().toString();
if (!TextUtils.isEmpty(listname.getText().toString())) {
startActivity(new Intent(getContext(),CheckslateHome.class).putExtra("data",itemname).putExtra("image",imageRes));
dismiss();
} else {
Toast.makeText(getContext(),"List Name not Empty ",Toast.LENGTH_SHORT).show();
}
}
});
第二活动 公共类CheckslateHome扩展了AppCompatActivity {
TextView listcounts;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_checkslate_home);
Bundle bundle = getIntent().getExtras();
if (bundle != null) {
String itemName= bundle.getString("data");
Int ItemImage = bundle.getString("Image");
**//How to Pass these Intents into the Custom ListView**
}
listcounts = findViewById(R.id.list_count);
ListView listView = findViewById(R.id.list1);
CustomAdpter customAdapter = new CustomAdpter();
listView.setAdapter(customAdapter);
}
public class CustomAdpter extends BaseAdapter {
private Context context;
private LayoutInflater layoutInflater;
@Override
public int getCount() {
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int i,View view,ViewGroup viewGroup) {
if (view == null) {
view = layoutInflater.inflate(R.layout.rowlayout,viewGroup,false);
}
ImageView imageicons = view.findViewById(R.id.image_list);
TextView listnames = view.findViewById(R.id.list_name);
return view;
}
}
解决方法
我强烈建议结合使用片段和导航,通过这种方式,您可以轻松浏览应用程序并使用safe-args插件在片段之间发送值
但是如果您坚持使用活动,则应该使用startActivityForResult
来调用第二个活动。