溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android碎片fragment如何實(shí)現(xiàn)靜態(tài)加載

發(fā)布時(shí)間:2021-06-03 14:02:32 來源:億速云 閱讀:153 作者:小新 欄目:移動開發(fā)

小編給大家分享一下Android碎片fragment如何實(shí)現(xiàn)靜態(tài)加載,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

靜態(tài)加載好后的界面如下,兩個(gè)碎片分別位于一個(gè)活動的左邊和右邊:

Android碎片fragment如何實(shí)現(xiàn)靜態(tài)加載

 左邊和右邊分別為一個(gè)碎片,這兩個(gè)碎片正好將一整個(gè)活動布滿。一個(gè)活動當(dāng)中可以擁有多個(gè)碎片,碎片的含義就是可以在同一個(gè)UI界面下,將這個(gè)界面分成好幾個(gè)界面,并且可以分別更新自己的狀態(tài),如果沒有碎片,那么如果你想要單獨(dú)在某一個(gè)區(qū)域?qū)崿F(xiàn)活動的“跳轉(zhuǎn)”就不可能了,因此我們可以引入碎片,這樣就可以在這個(gè)區(qū)域單獨(dú)進(jìn)行碎片的跳轉(zhuǎn)。在利用底部標(biāo)題欄進(jìn)行首頁UI的切換的時(shí)候就需要用到碎片,因此碎片在安卓開發(fā)當(dāng)中十分廣泛,這篇博客將會與你講解如何實(shí)現(xiàn)靜態(tài)加載碎片,除了靜態(tài)加載碎片,還具有動態(tài)加載碎片的方式,兩種方式不同的方式都進(jìn)行理解與引用,才可以把碎片的威力發(fā)揮到最大。下面是代碼,第一個(gè)是主活動當(dāng)中的代碼,主活動一定得繼承Fragment這個(gè)類才可以實(shí)現(xiàn)碎片:

一.MainActivity.java

import androidx.fragment.app.FragmentActivity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends FragmentActivity {
  public MainActivity() {
    Log.e("TAG", "MainActivity()..");
  }
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    Log.e("TAG", "MainActivity onCreate()..");
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
  }
}

然后咱們創(chuàng)建碎片,在上述的UI界面當(dāng)中有兩個(gè)碎片的區(qū)塊,因此我們連續(xù)創(chuàng)建兩個(gè)碎片:

二.MyFragment.java

我們在這個(gè)碎片當(dāng)中利用Java直接引入TextView控件,當(dāng)然在這個(gè)碎片所對應(yīng)的xml文件當(dāng)中也可以,這是相互等效的,都比較簡單。

import android.graphics.Color;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
public class MyFragment extends Fragment {
  @Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container,
               Bundle savedInstanceState) {
    //加載布局得到View對象并返回
    //創(chuàng)建一個(gè)視圖對象, 設(shè)置數(shù)據(jù)并返回
    TextView textView = new TextView(getActivity());
    textView.setText("這是第一個(gè)碎片");
    textView.setBackgroundColor(Color.RED);
    return textView;
  }
}

三.MyFragment2.java

import android.graphics.Color;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
public class MyFragment2 extends Fragment {
  @Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container,
               Bundle savedInstanceState) {
    //加載布局得到View對象并返回
    //創(chuàng)建一個(gè)視圖對象, 設(shè)置數(shù)據(jù)并返回
    TextView textView = new TextView(getActivity());
    textView.setText("這是第二個(gè)碎片");
    textView.setBackgroundColor(Color.RED);
    return textView;
  }
}

之后在咱們的主活動的UI界面當(dāng)中將代碼修改為:

四.activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="horizontal"
  tools:context=".MainActivity">
  <fragment
    android:name="com.example.fragment.MyFragment"
    android:id="@+id/myfragment_1"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    />
  <fragment
    android:name="com.example.fragment.MyFragment2"
    android:id="@+id/myfragment_2"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="match_parent"

    />
</LinearLayout>

這樣就可以把fragment引入到咱們的主活動上面來啦,運(yùn)行安卓項(xiàng)目,大功告成?。?/p>

以上是“Android碎片fragment如何實(shí)現(xiàn)靜態(tài)加載”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI