如何将 AlertDialog 更改为意图移动到另一个活动
Posted
技术标签:
【中文标题】如何将 AlertDialog 更改为意图移动到另一个活动【英文标题】:how to change AlertDialog to intent to move to another activity 【发布时间】:2021-11-12 08:18:14 【问题描述】:我尝试了各种方法,但不能,直到我停在这里,我自己尝试了一个 Intent (Intent intent = new Intent) 现在我已经使用了这个方法,但它不起作用然后我'还创建了一个新活动,但它也不起作用
@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i)
View view= LayoutInflater.from(context).inflate(R.layout.item,viewGroup,false);
return new MyViewHolder(view);
@Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder viewHolder, int i)
MyViewHolder item=(MyViewHolder) viewHolder;
User user=list.get(i);
item.getName().setText(user.getName());
Button edit = item.itemView.findViewById(R.id.edit);
edit.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
final View mView = LayoutInflater.from(context).inflate(R.layout.activity_update, null);
AlertDialog alertDialog = new AlertDialog.Builder(context)
.setView(mView)
.show();
final DaoSession daoSession;
daoSession = ((MyApp) ((Activity) context).getApplication()).getDaoSession();
Button editupd = alertDialog.findViewById(R.id.submitupdate);
editupd.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
UserDao userDao = daoSession.getUserDao();
User user1 = new User();
EditText name = mView.findViewById(R.id.name);
EditText address = mView.findViewById(R.id.address);
Button updt = mView.findViewById(R.id.submitupdate);
user1.setId(user.getId());
user1.setName(name.getText().toString());
user1.setAddress(address.getText().toString());
userDao.update(user1);
);
);
Log.e("name",user.getName());
@Override
public int getItemCount()
return list.size();
【问题讨论】:
你的意图 startActivity 代码在哪里? 这里了解详细信息[github.com/ahmadfariz/Note/tree/master/app/src/main/java/com/…,实际上我很困惑如何解释它,我只是制作了一个编辑数据视图,就像使用意图输入数据一样 【参考方案1】:如果您尝试在单击按钮时启动 AnotherActivity
,请更改您的 onClick 方法,例如:
Button edit = item.itemView.findViewById(R.id.edit);
edit.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
// Start your activity
Context context = v.getContext();
Intent intent = new Intent(context, AnotherActivity.class);
context.startActivity(intent);
);
【讨论】:
以上是关于如何将 AlertDialog 更改为意图移动到另一个活动的主要内容,如果未能解决你的问题,请参考以下文章