首页 > 其他分享 >android stdio对于xml中列表的展示

android stdio对于xml中列表的展示

时间:2023-03-20 10:46:47浏览次数:64  
标签:xml layout stdio public android data id view

我们需要用到一个控件,ListView如果愿意深度学习,可以观看下方的文章。

(11条消息) Android最常用的控件ListView(详解)_android listview_撩得Android一次心动的博客-CSDN博客

(1)新建两个.xml文件,一个作为列表,一个作为列表中的一条信息。

列表xml文件:

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<EditText
android:id="@+id/select_e"
android:layout_width="320dp"
android:layout_height="60dp"/>
<Button
       androic:text="查询"
android:id="@+id/select_b"
android:layout_width="wrap_content"
android:layout_height="60dp"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ListView
android:id="@+id/select_"
android:layout_height="200dp"
android:layout_width="match_parent"
/>
</LinearLayout>
</LinearLayout>

单条信息xml文件
<?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="wrap_content"
android:orientation="horizontal">
<TextView
android:textSize="25dp"
android:text=""
android:id="@+id/a"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>

 

(2)新建一个MyAdapter类和一个bean类,一个作为信标信息的java信息与xml文件的传输媒介。

  另一个作为单个输入信息的汇总。

MyAdapter类

 

package com.example.myapplication;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import java.util.List;

public class MyAdapter extends BaseAdapter {

private List<Bean> data;//创建私有的Bean类的data
private Context context;

public MyAdapter(List<Bean> data, Context context) {
this.data = data;
this.context = context;
}

@Override
public int getCount() {
return data.size();//获取data的长度
}

@Override
public Object getItem(int i) {
return null;
}

@Override
public long getItemId(int i) {//获取id
return i;
}

@Override
public View getView(int i, View view, ViewGroup viewGroup) {
if (view == null){//防止view不停的新建,
view = LayoutInflater.from(context).inflate(R.layout.information2,viewGroup,false);
}
TextView a=view.findViewById(R.id.a);
TextView b=view.findViewById(R.id.b);
TextView c=view.findViewById(R.id.c);
TextView d=view.findViewById(R.id.d);
a.setText("学号为:"+data.get(i).xuehao_);
b.setText("日期为:"+data.get(i).riqi_);
c.setText("关键字为:"+data.get(i).impor_);
d.setText("总结为:"+data.get(i).al_);
return view;
}
}

bean类

 

package com.example.myapplication;

public class bean {
public String al_;
public String xuehao_;
public String impor_;
public String riqi_;
}//严谨来讲需要使用private,但由于需要使用get、set函数,就偷懒使用public了

 

(3)在现java中申请MyAdatper和bean,并且对bean申请数组、赋值,传入MyAdapter,展示。

 

private List<String> xuehoa=new ArrayList<>();
private List<bean> data=new ArrayList<>();
@Override
/*以上为外部声名*/
String select_e=e.getText().toString();
re_(select_e);//我写了个搜select_e并将搜寻到的s_id加入到xuehao中
for(int i=0;i<xuehao.size();i++){
bean Bean = new bean();
Bean.xuehao_= xuehao.get(i);
Bean.al_=jilu.get(i);
data.add(Bean);//通过add把数据加入到data里面
}
ListView listView = findViewById(R.id.select_);//获取id,就是上面讲的屏幕里面的列表的id
listView.setAdapter(new MyAdapter2(data,select.this));//Adapter作用将各种数据以合适的形式显示在View中给用户看

 

标签:xml,layout,stdio,public,android,data,id,view
From: https://www.cnblogs.com/cocotun/p/17235169.html

相关文章

  • [Android] Android版本 和 SDK / NDK / Qt 版本对应关系
    系统版本与SDK版本平台版本 API级别(SDK版本)版本代号发布时间Android1130R2020.9Android10.029 Q2019.8Android9.028Pie2018.8Android8.1 27 Oreo2017.12Android8.0......
  • android studio里设置 大括号占一行
    看了书《构建之法》里面有说到建议编程时的那个大括号占一行的,今天学android的时候突然想试试设置 一下,上网搜索了一下,方法如下图:  这样就可以了!!!......
  • Android控件TextProgressBar进度条上显文字
    Android系统的进度条控件默认的设计的不是很周全,比如没有包含文字的显示,那么如何在Android进度条控件上显示文字呢?来自Google内部的代码来了解下,主......
  • Android的Handler总结
    <一>Handler的定义:         主要接受子线程发送的数据,并用此数据配合主线程更新UI.         解释:当应用程序启动时,And......
  • Android AsyncTask异步任务的使用
    文章目录​​小结​​​​定义异步任务类​​​​开启异步任务​​​​参考​​小结可以使用androidAsyncTask来执行繁重的后台任务,以避免UI界面无响应,并可以实时在UI界面......
  • Android自定义长按事件
    Android系统自带了长按事件,setOnLongClickListener即可监听。但是有时候,你不希望用系统的长按事件,比如当希望长按的时间更长一点的时候。这时候就需要......
  • [ROC-RK3568-PC] [Firefly-Android] 10min带你了解Ethernet的使用
    ......
  • Android studio
    AndroidStudio是基于IntelliJIDEA的,我们都知道,IDEA是一个很方便很好用的IDE,其中有许多快捷键,但是太多快捷键我们也记不住。  其实,我们可以记住几个常用的快捷键就好......
  • Android studio2
    AndroidStudio提供了更加高级的布局文件编辑器,(1)我们在编写XML文件的时候,能实时查看布局文件。(2)能直接以拖控件的方式编辑布局文件。当然这些Eclipse也有。   只有这......
  • Android 开发入门(1)| 准备 | 开发环境 | 开发基础
    0x01准备(1)概述安卓(Android)基于Linux内核开发的操作系统,由Google等领导开发。(2)版本Android版本号API发布时间Android14-2023Android13332022.......