Android入門之Adapter的簡(jiǎn)單使用教程
Adapter介紹
開始進(jìn)入高級(jí)一些的組件的講解了,后面章節(jié)會(huì)大量使用到ListView,在講ListView前就必須帶著這個(gè)Adapter的概念去做講解。
Adapter其實(shí)就是MVC的概念, 舉個(gè)例子:大型的商業(yè)程序通常由多人一同開發(fā)完成,比如有人負(fù)責(zé)操作接口的規(guī)劃與設(shè)計(jì), 有人負(fù)責(zé)程序代碼的編寫如果要能夠做到程序項(xiàng)目的分工就必須在程序的結(jié)構(gòu)上做適合的安排。

上面就是Adapter以及繼承結(jié)構(gòu)圖了,接著我們介紹一下實(shí)際開發(fā)中還用到的幾個(gè)Adapter吧!
BaseAdapter:抽象類,實(shí)際開發(fā)中我們會(huì)繼承這個(gè)類并且重寫相關(guān)方法,用得最多的一個(gè)Adapter;
ArrayAdapter:支持泛型操作,最簡(jiǎn)單的一個(gè)Adapter,只能展現(xiàn)一行文字;
SimpleAdapter:同樣具有良好擴(kuò)展性的一個(gè)Adapter,可以自定義多種效果;
SimpleCursorAdapter:用于顯示簡(jiǎn)單文本類型的listView,一般在數(shù)據(jù)庫那里會(huì)用到,已經(jīng)過時(shí),我們教程里不會(huì)講解;
多說無益,寫代碼最實(shí)際,接下來我們來用寫幾個(gè)簡(jiǎn)單的Adapter實(shí)例, 幫助我們了解Adapter給我們帶來的便利,另外,因?yàn)锳dapter需要結(jié)合ListView, GridView等等控件講解,一些高級(jí)一點(diǎn)的用法我們都放在ListView那里講!
因此,現(xiàn)在我們就來看一個(gè)最簡(jiǎn)單的ListView的使用吧。
課程目標(biāo)

我們今天要實(shí)現(xiàn)這個(gè)ListView,使用的就是Adapter。
有一種Adapter叫ArrayAdapter<String> ,它的用法如下:
package org.mk.android.demo.demobasicadapter;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
List<String> titleList=new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//要顯示的數(shù)據(jù)
titleList.add("雷神");
titleList.add("基神");
titleList.add("基神");
ArrayAdapter<String> adapter = new ArrayAdapter<String>
(this,android.R.layout.simple_expandable_list_item_1,titleList);
//獲取ListView對(duì)象,通過調(diào)用setAdapter方法為L(zhǎng)istView設(shè)置Adapter設(shè)置適配器
ListView listView = (ListView) findViewById(R.id.listView);
listView.setAdapter(adapter);
}
}我們來看這個(gè)簡(jiǎn)單例子的UI端代碼
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>自然,它就能實(shí)現(xiàn)上述這個(gè)運(yùn)行效果。
當(dāng)然,它只是實(shí)現(xiàn)了一個(gè)很簡(jiǎn)單的List View的應(yīng)用。我們要實(shí)現(xiàn)進(jìn)一步更復(fù)雜點(diǎn)的如下面這種效果我們就需要使用到SimpleAdapter這個(gè)類:

SimpleAdapter:看似簡(jiǎn)單,功能強(qiáng)大,很多實(shí)際場(chǎng)景中其實(shí)都會(huì)使用到SimpleAdapter。我們會(huì)在下篇中著重講述如何使用Simple Adapter來實(shí)現(xiàn)上述這樣的一個(gè)復(fù)雜布局。
到此這篇關(guān)于Android入門之Adapter的簡(jiǎn)單使用教程的文章就介紹到這了,更多相關(guān)Android Adapter使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺談Android Activity與Service的交互方式
下面小編就為大家?guī)硪黄獪\談Android Activity與Service的交互方式。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09
百度語音識(shí)別(Baidu Voice) Android studio版本詳解
這篇文章主要介紹了百度語音識(shí)別(Baidu Voice) Android studio版本詳解的相關(guān)資料,需要的朋友可以參考下2016-09-09
Android實(shí)現(xiàn)圖片自動(dòng)切換功能(實(shí)例代碼詳解)
這篇文章主要介紹了Android實(shí)現(xiàn)圖片自動(dòng)切換功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02
不允許錯(cuò)過的Anndroid技術(shù)經(jīng)驗(yàn)60條
不允許錯(cuò)過的Anndroid技術(shù)經(jīng)驗(yàn)60條,與大家分享,希望可以提高大家Android開發(fā)水平,感興趣的朋友可以參考一下2016-02-02
Android RecyclerView詳解之實(shí)現(xiàn) ListView GridView瀑布流效果
RecyclerView 是Android L版本中新添加的一個(gè)用來取代ListView的SDK,它的靈活性與可替代性比listview更好2016-07-07
Android APK應(yīng)用安裝原理解析之AndroidManifest使用PackageParser.parserPac
這篇文章主要介紹了Android APK應(yīng)用安裝原理解析之AndroidManifest使用PackageParser.parserPackage原理,結(jié)合實(shí)例形式分析了PackageManagerService調(diào)用PackageParser.parserPackage方法解析APK清單相關(guān)原理與操作技巧,需要的朋友可以參考下2017-12-12
Android進(jìn)階手寫IPC通信框架告別繁瑣AIDL
這篇文章主要為大家介紹了Android進(jìn)階手寫IPC通信框架告別繁瑣AIDL實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01

