适配器有几种用法,怎样看适配器的参数

首页 > 数码 > 作者:YD1662024-05-14 22:10:40

1.MVC模式的简单理解

在开始学习adapter之前我们要来了解下这个MVC模式概念: 举个例子:大型的商业程序通常由多人一同开发完成,比如有人负责操作接口的规划与设计, 有人负责程序代码的编写如果要能够做到程序项目的分工就必须在程序的结构上做适合的安排 ,如果,接口设计与修改都涉及到程序代码的改变的话,那么两者的分工就会造成执行上的困难 良好的程序架构师将整个程序项目划分为如图的三个部分:

适配器有几种用法,怎样看适配器的参数(1)

关系图解析:

而这个Adapter则是中间的这个Controller的部分: Model(数据) ---> Controller(以什么方式显示到)---> View(用户界面) 这就是简单MVC组件的简单理解!


2.Adapter概念解析

官方文档:Adapter

首先我们来看看他的继承结构图:

适配器有几种用法,怎样看适配器的参数(2)

上面就是Adapter以及继承结构图了,接着我们介绍一下实际开发中还用到的几个Adapter吧!

其实一个BaseAdapter就够玩的了,至于其他的,实际开发中用得不多,后面用到在讲解~


3.代码示例:

好的,多说无益,写代码最实际,接下来我们来用写几个简单的Adapter实例, 帮助我们了解Adapter给我们带来的便利,另外,因为Adapter需要结合ListView, GridView等等控件讲解,一些高级一点的用法我们都放在ListView那里讲! 这里就简单演示下效果,另外这里用到的控件是ListView,下一节就会讲解, 现在看不懂也没关系!


1)ArrayAdapter使用示例:

运行效果图:

适配器有几种用法,怎样看适配器的参数(3)

代码实现:

public class MainActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//要显示的数据

String[] strs = {"基神","B神","翔神","曹神","J神"};

//创建ArrayAdapter

ArrayAdapter<String> adapter = new ArrayAdapter<String>

(this,android.R.layout.simple_expandable_list_item_1,strs);

//获取ListView对象,通过调用setAdapter方法为ListView设置Adapter设置适配器

ListView list_test = (ListView) findViewById(R.id.list_test);

list_test.setAdapter(adapter);

}

}

一些相关的东西:

1.除了通过数组外,我们还可以写到一个数组资源文件中:

比如:在res\valuse下创建一个数组资源的xml文件:arrays.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

<string-array name="myarray">

<item>语文</item>

<item>数学</item>

<item>英语</item>

</string-array>

</resources>

接着布局的listview属性设置下这个列表项:

<ListView

android:id="@id/list_test"

android:layout_height="match_parent"

android:layout_width="match_parent"

android:entries="@array/myarray"/>

就可以了~

当然我们也可以在Java代码中这样写:

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,

R.array.myarray,android.R.layout.simple_list_item_multiple_choice );

同样也是可以的!

2.一开始也说了这个ArrayAdapter支持泛型,那么集合必不可少啦,比如,这样写:

List<String> data = new ArrayList<String>();

data.add("基神");

data.add("B神");

ArrayAdapter<String> adapter = new ArrayAdapter<String>

(this,android.R.layout.simple_expandable_list_item_1,data);

就可以了~

3.我们看到了在实例化ArrayAdapter的第二个参数: android.R.layout.simple_expandable_list_item_1 其实这些是系统给我们提供好的一些ListView模板,有下面几种:

simple_list_item_1 : 单独一行的文本框

适配器有几种用法,怎样看适配器的参数(4)

首页 123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.