




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
【移動(dòng)應(yīng)用開發(fā)技術(shù)】RecyclerView的使用方法與如何設(shè)置點(diǎn)擊監(jiān)聽
RecyclerView是ListView的衍生而來的,它比ListView效率更高,使用起來也更加方便。本文將會(huì)講解用RecyclerView如何實(shí)現(xiàn):垂直列表效果、橫向列表效果、網(wǎng)格列表效果、瀑布流(橫向與縱向),以及Item的點(diǎn)擊監(jiān)聽(因?yàn)镽ecyclerView沒有item的點(diǎn)擊監(jiān)聽功能,這里是我自創(chuàng)的,感覺還算好用)。效果還算強(qiáng)大吧?哈哈,下面看源碼(1)主布局
<?xml
version="1.0"
encoding="utf-8"?>
<RelativeLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</RelativeLayout>(2)Item<?xml
version="1.0"
encoding="utf-8"?>
<LinearLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/tv"
android:textSize="60dp"
android:padding="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>(3)MainActivity代碼public
class
MainActivity
extends
AppCompatActivity
{
private
RecyclerView
recyclerView;
private
String[]
ibsValue
=
{"直播",
"番劇",
"動(dòng)畫",
"音樂",
"舞蹈",
"游戲",
"科技",
"娛樂",
"鬼畜",
"電影",
"電視劇",
"游戲中心",};
@Override
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView
=
(RecyclerView)
findViewById(R.id.recyclerView);
/**
*
設(shè)置固定尺寸
*/
recyclerView.setHasFixedSize(false);
/**
*
想用線性布局就用這個(gè)
*/
//LinearLayoutManager
linearLayoutManager=new
LinearLayoutManager(this);
/**
*
如果用線行布局的話,可以設(shè)置垂直/橫向
*/
//
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
/**
*
想用網(wǎng)格布局就用這個(gè)
*/
//GridLayoutManager
gridLayoutManager=new
GridLayoutManager(this,2);
/**
*
想用瀑布流布局就用這個(gè)
*/
StaggeredGridLayoutManager
staggeredGridLayoutManager
=
new
StaggeredGridLayoutManager(3,
StaggeredGridLayoutManager.HORIZONTAL);
/**
*
在這里選擇排列布局(用哪個(gè)就放進(jìn)來就行了)
*/
recyclerView.setLayoutManager(staggeredGridLayoutManager);
/**
*
設(shè)置適配器
*/
recyclerView.setAdapter(new
MyAdapter(ibsValue));
}
}(4)適配器Adapter/**
*
Created
by
Administrator
on
2015/11/15.
*/
public
class
MyAdapter
extends
RecyclerView.Adapter<MyAdapter.ViewHolder>{
/**
*
這里創(chuàng)建一個(gè)數(shù)組,準(zhǔn)備接收傳過來的數(shù)據(jù)
*/
public
String[]
datas;
/**
*
這里調(diào)用在創(chuàng)建MyAdapter實(shí)例的時(shí)候,可以將數(shù)據(jù)傳過來
*
@param
mdatas
*/
public
MyAdapter(String[]
mdatas){
datas=mdatas;
}
/**
*
這里加載加載Item,并且創(chuàng)建ViewHolder對(duì)象,把加載的Item(View)傳給viewholder
*
@param
parent
*
@param
viewType
*
@return
*/
@Override
public
ViewHolder
onCreateViewHolder(ViewGroup
parent,
int
viewType)
{
View
view=LayoutInflater.from(parent.getContext()).inflate(R.layout.item,parent,false);
ViewHolder
viewHolder=new
ViewHolder(view,parent.getContext());
return
viewHolder;
}
/**
*
這里給item中的子View綁定數(shù)據(jù)
*
@param
holder
*
@param
position
*/
@Override
public
void
onBindViewHolder(ViewHolder
holder,
int
position)
{
holder.mTextView.setText(datas[position]);
}
/**
*
這里返回item數(shù)量
*
@return
*/
@Override
public
int
getItemCount()
{
return
datas.length;
}
/**
*
ViewHolder類,注意要繼承RecyclerView.ViewHolder
*/
public
static
class
ViewHolder
extends
RecyclerView.ViewHolder
implements
View.OnClickListener
{
public
TextView
mTextView;
public
Context
context;
public
ViewHolder(View
itemView,Context
context)
{
super(itemView);
mTextView=
(TextView)
itemView.findViewById(R.id.tv);
this.context=context;
itemView.setOnClickListener(this);
}
/**
*
這里可以設(shè)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)鋰電池正極材料市場(chǎng)發(fā)展趨勢(shì)及投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)鋁冶煉行業(yè)運(yùn)行動(dòng)態(tài)與前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)菱鎂礦產(chǎn)業(yè)競(jìng)爭(zhēng)格局與十三五規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)聯(lián)苯雙酯行業(yè)市場(chǎng)運(yùn)行狀況與十三五規(guī)劃分析報(bào)告
- 2025-2030年中國(guó)粘玉米行業(yè)規(guī)模分析及發(fā)展建議研究報(bào)告
- 2025-2030年中國(guó)空管系統(tǒng)市場(chǎng)十三五規(guī)劃與投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)畜禽養(yǎng)殖中抗生素行業(yè)發(fā)展?fàn)顩r及投資戰(zhàn)略研究報(bào)告
- 東北財(cái)經(jīng)大學(xué)《中醫(yī)護(hù)理學(xué)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東江門幼兒師范高等??茖W(xué)?!睹嫦?qū)ο笈c可視化編程》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州工商學(xué)院《健康服務(wù)與營(yíng)銷學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 中華人民共和國(guó)學(xué)前教育法-知識(shí)培訓(xùn)
- 2023年新高考(新課標(biāo))全國(guó)2卷數(shù)學(xué)試題真題(含答案解析)
- 事業(yè)單位工作人員獎(jiǎng)勵(lì)審批表
- 人教版六年級(jí)美術(shù)下冊(cè)全冊(cè)課件【完整版】
- GB/T 9788-1988熱軋不等邊角鋼尺寸、外形、重量及允許偏差
- 教科版三年級(jí)下冊(cè)科學(xué)全冊(cè)完整課件
- 上海小弄堂-電子小報(bào)
- 軌道交通安全專題培訓(xùn)
- 物理化學(xué)完整版答案
- 節(jié)流孔板孔徑計(jì)算
- 學(xué)生流失率考核辦法(試行)
評(píng)論
0/150
提交評(píng)論