真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在Android中動(dòng)態(tài)添加碎片-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“怎么在Android中動(dòng)態(tài)添加碎片”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“怎么在Android中動(dòng)態(tài)添加碎片”吧!

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)制作、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)都勻免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

1.新建一個(gè)碎片布局,fragment.xml




2. 新建一個(gè)類Fragment1.java,繼承自Fragment

注意Fragment有兩個(gè)不同的包,推薦使用support-v4中的,兼容性更好,另一個(gè)安卓4.2以下就會(huì)崩潰。在該碎片中可以進(jìn)行各種操作,就如同操作一個(gè)activity。

public class Fragment1 extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view=inflater.inflate(R.layout.fragment_questions1,container,false);
Log.d("questionMain1","碎片1加載");
return view;
}
}

碎片和活動(dòng)之間的通信。雖然碎片都是嵌入在活動(dòng)中顯示的,但他們之間的關(guān)系并不明顯。

1.在活動(dòng)中調(diào)用碎片的方法。FragmentManagert提供了一個(gè)類似于finViewById()的方法,用于從布局文件中獲取碎片的實(shí)例。如果是動(dòng)態(tài)加載的就跟簡(jiǎn)單了加載是你就有了該碎片的實(shí)例。

2.在碎片中調(diào)用活動(dòng)的方法??梢酝ㄟ^(guò)getActivity()方法得到和當(dāng)前碎片綁定的活動(dòng)實(shí)例。

碎片的綁定


1.靜態(tài)綁定


在活動(dòng)布局中加一個(gè)碎片標(biāo)簽,比較簡(jiǎn)單不細(xì)說(shuō)。android:name="",該標(biāo)簽為碎片對(duì)應(yīng)的類,注意要包含路徑全名。





2.動(dòng)態(tài)綁定

這個(gè)才是碎片的強(qiáng)大之處,在程序運(yùn)行時(shí)動(dòng)態(tài)的添加到碎片中,根據(jù)具體情況來(lái)動(dòng)態(tài)添加碎片,可以將程序界面定制得更加多樣化(多用于自適應(yīng)手機(jī)和平板的應(yīng)用)

下面的代碼以點(diǎn)擊按鈕。有三個(gè)碎片,通過(guò)點(diǎn)擊事件在一個(gè)活動(dòng)中動(dòng)態(tài)切換顯示的碎片。

package com.xiaobu.xiaoyan1.question;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.widget.TextView;
import com.xiaobu.xiaoyan1.R;
import com.xiaobu.xiaoyan1.base.BaseActivity;
public class QuestionsMain extends BaseActivity implements TextView.OnClickListener{
private TextView fragment1;
private TextView fragment2;
private TextView fragment3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_question_main);
initView();
}
private void initView(){
((TextView)findViewById(R.id.question_text)).setTextColor(getResources().getColor(R.color.colorTextChecked));
fragment1=(TextView)findViewById(R.id.quiz_text_view);
fragment2=(TextView)findViewById(R.id.answer_text_view);
fragment3=(TextView)findViewById(R.id.chosen_text_view);
fragment1.setOnClickListener(this);
fragment2.setOnClickListener(this);
fragment3.setOnClickListener(this);
changeFragment(new QuestionsMain1());
checkedChange(fragment1);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.quiz_text_view:
changeFragment(new QuestionsMain1());
break;
case R.id.answer_text_view:
changeFragment(new QuestionsMain2());
break;
case R.id.chosen_text_view:
changeFragment(new QuestionsMain3());
break;
default:
break;
}
}
private void changeFragment(Fragment fragment){
FragmentManager fragmentManager=getSupportFragmentManager();
FragmentTransaction transaction=fragmentManager.beginTransaction();
transaction.replace(R.id.main_view,fragment);//第一個(gè)參數(shù)表示容器的id,第二個(gè)參數(shù)為碎片實(shí)例。
transaction.commit();
}
}

到此,相信大家對(duì)“怎么在Android中動(dòng)態(tài)添加碎片”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!


網(wǎng)站欄目:怎么在Android中動(dòng)態(tài)添加碎片-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)源:http://weahome.cn/article/dgocis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部