栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

移动开发第二次作业

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

移动开发第二次作业

移动开发第二次作业
  • 一、实现功能
  • 二、具体实现
  • 三、主要代码
  • 四、结果截图
  • 五、心得体会
  • 六、gitte源码

一、实现功能

对实验二的布局进行了部分改进,使效果图看起来更佳。
在实验二的基础上,对有recycleView的页面进行点击跳转设计。比如,某一tab页是新闻列表,则点击某一行能跳转到新闻详情页面;

二、具体实现

Intent 是一个消息传递对象,可以用来从其他应用组件请求操作。
启动 Activity
Activity 表示应用中的一个屏幕。通过将 Intent 传递给 startActivity(),可以启动新的 Activity 实例。Intent 用于描述要启动的 Activity,并携带任何必要的数据。
要进行数据传递,就需要用到putExtra()方法。intent中提供一系列的putExtra()方法的重载,可以把想要传递的数据暂存在intent中,当另一个活动启动后,再把这些数据从intent缓存中取出即可。
获取数据的方法有getStringExtra()。同理,还有getIntExtra()、getBooleanExtra()等方法
putExtra(“A”, B)方法中,AB为键值对,第一个参数为键名,第二个参数为键对应的值,这个值才是真正要传递的数据

(以下内容本次实验没有用到)
如果希望在 Activity 完成后收到结果,请调用 startActivityForResult()。在 Activity 的 onActivityResult() 回调中,Activity 将结果作为单独的 Intent 对象接收。

三、主要代码


首先在myadapter定义

private Class[] jumpActivity={friendDetail1.class,
            friendDetail2.class};

在Adapter中的onBindViewHolder函数里,添加监听点击事件

//设置item中的点击监听
        int i = holder.getAdapterPosition();
        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent(context,jumpActivity[i]);
                intent.putExtra("name", data.get(i).get("姓名").toString());
                intent.putExtra("area", data.get(i).get("地区").toString());
                intent.putExtra("age", data.get(i).get("年龄").toString());

                context.startActivity(intent);
            }
        });

设置一个activity名字frienddetail1,它所对应的java文件如下

 Intent intent=getIntent();
        String name=intent.getStringExtra("name");
        String area=intent.getStringExtra("area");
        String age=intent.getStringExtra("age");

用来接受数据

frienddetail1.java具体内容如下

package com.example.mywork1;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.LinearLayout;
import android.widget.TextView;

public class friendDetail1 extends AppCompatActivity {
    private LinearLayout linearLayout;

    private TextView textView1,textView2,textView3;
    //private Intent intent;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_friend_detail1);
        textView1=findViewById(R.id.textView1);
        textView2=findViewById(R.id.textView2);
        textView3=findViewById(R.id.textView3);
        Intent intent=getIntent();
        String name=intent.getStringExtra("name");
        String area=intent.getStringExtra("area");
        String age=intent.getStringExtra("age");

        textView1.setText(name);
        textView2.setText(area);
        textView3.setText(age);
        linearLayout=findViewById(R.id.linearlayoutmoments);
        linearLayout.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent(getApplicationContext(),moments1.class);
                startActivity(intent);
            }
        });
    }
}

activity_friend_Detail1.xml

使用了view做分割线




    

        

        

            

            

            
        

    

    

    

        

        

        

        

    
    

    

        

        

    

actvity_moments1.xml




    

    

        

        
    

    

四、结果截图


点击第一个item

点击朋友圈

五、心得体会

通过本次实验,我学习到了如何通过intent页面跳转和传递数据。此次实验中,为了实现跳转到不同界面,用到了getAdapterPosition()获取下标索引,还学到了用inten的getstringextra(),putextra()进行传值。要绑定必然要用到onBindViewHolder方法里的holder,就用getAdapterPosition()方法,返回值为int。。所以getAdapterPosition()方法写在这里就是在对各个item赋值时,得到item在RecycleView中的索引,我们可以利用这个索引为每个item设置点击监听事件。

六、gitte源码

gitte源码

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/345995.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号