2023.10.29

二、App门户页面设计与开发——点击跳转

【技术说明】本功能的技术为:activity;在列表页上点击跳转到另一详情页面。

【关键代码解析】

上次写到了在任一tab页中实现列表效果(如下图),这次在列表上实现点击跳转

1.首先新建chat.java文件

2023.10.29_第1张图片

这个文件用来展示列表点击跳转后的页面。

在这里使用基于对button3的点击进行跳转,返回至列表页面,用button3.setOnClickListener()函数进行监听。

public class chat extends AppCompatActivity {
    @Override
    protected void onStart() {
        super.onStart();
        setContentView(R.layout.activity_chat1);
        Log.d("cgm","chat:start");
        Button button3;
        TextView textView7;
        textView7=findViewById(R.id.textView);
        Intent intent2=getIntent();
        textView7.setText(intent2.getStringExtra("name")); //接收传来的数据
        button3=findViewById(R.id.button);

        button3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Log.d("cgm","onClick:");
                Intent intent=new Intent();
                intent.putExtra("data_return","返回的数据");
                setResult(RESULT_OK,intent);
                finish();  //结束活动
            }
        });
    }

    @Override
    protected void onStop() {
        super.onStop();
        Log.d("cgm","chat:stop");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.d("cgm","chat:Destroy");
    }
}

新建activity_chat.xml,设置跳转之后的页面

    

    

效果展示:

2023.10.29_第2张图片

 2.其次在RecyclerAdapter中重写onBindViewHolder

打开一个新的activity并传参,在这里使用一个startActivity()来开启活动

    public void onBindViewHolder(@NonNull Myholder holder, int position) {
        holder.textView.setText(list1.get(position));
        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent1=new Intent(context1,chat.class);
                intent1.putExtra("name",list1.get(position)); //参数传递
                context1.startActivity(intent1);
            }
        });
    }

最终效果展示:

代码仓库:

cgmAS: CGM

实验总结:

这次实验运行出了上次未运行出的列表滑动效果,并实现了列表点击跳转。

你可能感兴趣的:(java,开发语言)