Android物联网应用程序开发(智慧园区)—— 图片预览界面

Android物联网应用程序开发(智慧园区)—— 图片预览界面效果图:实现步骤:1、首先在build.gradle文件中引入RecycleViewimplementation’com.android.support:recyclerview-v7:28.0.0’添加完成后,在右上角有一个同步SyncNow的提示,点击进行同步构建,接下来修改activity_main.xml的代码2、在activity_main.xml布局文件中加入RecyclerView<?xmlversion=”1.0″encoding=

大家好,又见面了,我是你们的朋友全栈君。

效果图:

Android物联网应用程序开发(智慧园区)—— 图片预览界面

实现步骤:

1、首先在 build.gradle 文件中引入 RecycleView

implementation 'com.android.support:recyclerview-v7:28.0.0'

Android物联网应用程序开发(智慧园区)—— 图片预览界面

添加完成后,在右上角有一个同步Sync Now的提示,点击进行同步构建,接下来修改activity_main.xml的代码

2、在 activity_main.xml 布局文件中加入RecyclerView

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/recycler_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </android.support.v7.widget.RecyclerView>
</LinearLayout>

接着创建RecyclerView的列表项布局

Android物联网应用程序开发(智慧园区)—— 图片预览界面

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="400dp"
    android:gravity="center">

    <TextView
        android:id="@+id/time"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center" />

    <View
        android:layout_width="1dp"
        android:layout_height="fill_parent"
        android:background="#c0c0c0" />

    <ImageView
        android:id="@+id/image"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_margin="4dp"
        android:layout_weight="2"
        android:scaleType="fitCenter"
        android:src="@drawable/image1" />
</LinearLayout>

3、然后创建 RecyclerView  的数据适配器

package com.newland.project3_4;

import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

public class MonitorAdapter extends RecyclerView.Adapter<MonitorAdapter.ViewHolder> {
    private String[] times = {"2019年5月9日17时14分30秒", "2019年5月9日17时15分30秒", "2019年5月9日18时30分30秒", "2019年5月9日18时40分30秒", "2019年5月10日17时14分30秒"};
    private int[] imageIds = {R.drawable.image1,R.drawable.image2,R.drawable.image3,R.drawable.image4,R.drawable.image5};

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyclerview_item, parent, false);
        ViewHolder holder = new ViewHolder(view);
        return holder;
    }

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
        holder.image.setImageResource(imageIds[position]);
        holder.time.setText(times[position]);
    }

    @Override
    public int getItemCount() {
        return times.length;
    }

    static class ViewHolder extends RecyclerView.ViewHolder {
        private ImageView image;//图片
        private TextView time;//时间

        public ViewHolder(View v) {
            super(v);
            image = v.findViewById(R.id.image);
            time = v.findViewById(R.id.time);
        }
    }
}

最后设置 RecyclerView 的适配器

package com.newland.project3_4;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.DividerItemDecoration;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;

public class MainActivity extends AppCompatActivity {
    private RecyclerView recyclerView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        recyclerView = findViewById(R.id.recycler_view);
        //创建线性布局管理器,方向垂直
        LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
        //recyclerView设置布局管理器
        recyclerView.setLayoutManager(linearLayoutManager);
        MonitorAdapter adapter = new MonitorAdapter();
        //添加Android自带的分割线
        recyclerView.addItemDecoration(new DividerItemDecoration(this, DividerItemDecoration.VERTICAL));
        //设置适配器
        recyclerView.setAdapter(adapter);
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151106.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月22日 下午3:16
下一篇 2022年6月22日 下午3:16


相关推荐

  • 什么是脚本,脚本语言?

    什么是脚本,脚本语言?一 脚本百科解释 脚本 script 是使用一种特定的描述性语言 依据一定的格式编写的可执行文件 又称作宏或批处理文件 脚本通常可以由应用程序临时调用并执行 各类脚本目前被广泛地应用于网页设计中 因为脚本不仅可以减小网页的规模和提高网页浏览速度 而且可以丰富网页的表现 如动画 声音等 举个最常见的例子 当我们点击网页上的 E mail 地址时能自动调用 OutlookExpre 或 Fox

    2026年3月20日
    1
  • 解决sql server批量插入时出现“来自数据源的String类型的给定值不能转换为指定目标列的类型nvarchar。”问题

    解决sql server批量插入时出现“来自数据源的String类型的给定值不能转换为指定目标列的类型nvarchar。”问题问题的原因:源的一个字段值长度超过了目标数据库字段的最大长度解决方法:扩大目标数据库对应字段的长度一般原因是源的字段会用空字符串填充,导致字符串长度很大,可以使用rtrim去除…

    2022年7月20日
    16
  • Android布局详解之一:FrameLayout

    Android布局详解之一:FrameLayout原创文章,如有转载,请注明出处:http://blog.csdn.net/yihui823/article/details/6702273 FrameLayout是最简单的布局了。所有放在布局里的控件,都按照层次堆叠在屏幕的左上角。后加进来的控件覆盖前面的控件。在Fr

    2022年6月2日
    63
  • python执行测试用例_java随机函数random使用方法

    python执行测试用例_java随机函数random使用方法前言通常我们认为每个测试用例都是相互独立的,因此需要保证测试结果不依赖于测试顺序,以不同的顺序运行测试用例,可以得到相同的结果。pytest默认运行用例的顺序是按模块和用例命名的ASCII编码

    2022年7月28日
    13
  • RTCP「建议收藏」

    RTCP「建议收藏」RTCPRTCP协议将控制包周期发送给所有连接者,应用与数据包相同的分发机制。低层协议提供数据与控制包的复用,如使用单独的UDP端口号。RTCP执行下列四大功能:(1)主要是提供数据发布的质量反馈。R

    2022年8月5日
    7
  • java jcf查看_JAVA 集合框架(JCF)

    java jcf查看_JAVA 集合框架(JCF)网络上搜索 java 集合框架各种理论知识 图谱都有 只要你认真看就会有收获 博主是一个坚决不随意 造轮子 的新人 所以我的这篇文章就总结一下我所学到的 JCF 首先谈一下我的学习路径 大二上学期学习前端 js html css 大二下学期学习 java 语言基础 连带着数据结构也囫囵一遍 大三上学期学习 javaEE 学完 ssm 后 课程戛然而止 感觉人生寂寞如雪 JCF 数据 java 的语言基础部分 但是所

    2026年2月5日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号