当前位置:首页 > 数码 >

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

来源:原点资讯(www.yd166.com)时间:2024-05-14 22:10:40作者:YD166手机阅读>>

1.MVC模式的简单理解

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

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

关系图解析:

  • Model:通常可以理解为数据,负责执行程序的核心运算与判断逻辑,,通过view获得用户 输入的数据,然后根据从数据库查询相关的信息,最后进行运算和判断,再将得到的结果交给view来显示
  • view:用户的操作接口,说白了就是GUI,应该使用哪种接口组件,组件间的排列位置与顺序都需要设计
  • Controller:控制器,作为model与view之间的枢纽,负责控制程序的执行流程以及对象之间的一个互动

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


2.Adapter概念解析

官方文档:Adapter

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

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

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

  • BaseAdapter:抽象类,实际开发中我们会继承这个类并且重写相关方法,用得最多的一个Adapter!
  • ArrayAdapter:支持泛型操作,最简单的一个Adapter,只能展现一行文字~
  • SimpleAdapter:同样具有良好扩展性的一个Adapter,可以自定义多种效果!
  • SimpleCursorAdapter:用于显示简单文本类型的listView,一般在数据库那里会用到,不过有点过时, 不推荐使用!

其实一个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下一页

栏目热文

适配器就是充电器吗(电源适配器是指充电器吗)

适配器就是充电器吗(电源适配器是指充电器吗)

充电器和电源适配器在日常生活中随处可见,很多人觉得他们是相同的产品的不同称呼,实际并非如此。充电器和电源适配器在本质和定...

2024-05-14 21:58:41查看全文 >>

雪绒花歌词教唱中文(雪绒花歌词打印)

雪绒花歌词教唱中文(雪绒花歌词打印)

首先,请家长朋友牢记英语的五个元音字母和音标。这是我们帮助孩子轻松解决英语发音的重要一步。这个表格只是一个大概的对应,只...

2024-05-14 21:41:49查看全文 >>

雪绒花中文演唱(雪绒花国语歌曲)

雪绒花中文演唱(雪绒花国语歌曲)

春风拂面笑开颜,龙腾四海迎新年。今晚19:30,《春满东方 龙耀追光·2024东方卫视春节联欢晚会》在东方卫视...

2024-05-14 22:03:28查看全文 >>

雪绒花儿童歌曲中文版(雪绒花儿歌儿童唱歌)

雪绒花儿童歌曲中文版(雪绒花儿歌儿童唱歌)

9月2日21时31分,翻译家薛范在上海交通大学医学院附属第九人民医院逝世,享年88岁。薛范毕业于上海俄语专科学...

2024-05-14 22:09:05查看全文 >>

关于仁的简短故事(关于仁的小故事50字)

关于仁的简短故事(关于仁的小故事50字)

小篆楷书隶书会意,形声字解: 小篆「仁」,从「人」 ,从「二」。「仁」是二人合而为一,乃亲如一体也。按「二」者有两者相容...

2024-05-14 22:16:59查看全文 >>

环回适配器的作用(环回网络适配器好处)

环回适配器的作用(环回网络适配器好处)

你好,这里是网络技术联盟站。在当今数字化时代,网络连接已经成为我们日常生活和商业活动的不可或缺的一部分。无论是在家里浏览...

2024-05-14 22:10:40查看全文 >>

什么可以美白皮肤最快(怎样美白皮肤最简单)

什么可以美白皮肤最快(怎样美白皮肤最简单)

请不要忽略生活中这些可以变白的小细节!其实在我决定变白之前我也没特别的意识到我自己有多黑,可能是习惯了,心大哈哈。我的肤...

2024-05-14 21:41:53查看全文 >>

忘川河彼岸花歌词(忘川河完整版 歌词)

忘川河彼岸花歌词(忘川河完整版 歌词)

传说人死先到鬼门关,途经黄泉路,便来到忘川河边...... 忘川河水呈血黄色,里面尽是不得投胎的孤魂野鬼,虫蛇满布,腥风...

2024-05-14 21:42:43查看全文 >>

抖音上最火彼岸花原唱(抖音最新歌曲彼岸花)

抖音上最火彼岸花原唱(抖音最新歌曲彼岸花)

《还没有爱够》王馨上榜8周,上周排名第11。这是一首古韵十足又充满温情的歌曲。竹笛和古筝十分抓耳,合成器的音色圆润清脆,...

2024-05-14 21:31:05查看全文 >>

文档排行