Android Fragment实现按钮间的切换
2016-10-17 18:53
435 查看
原文地址:http://blog.csdn.net/a123demi/article/details/32693037
Fragment要点
Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。
Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。然而,当activity运行时(在onResume()之后,onPause()之前),你可以单独地操作每个Fragment,比如添加或删除或替代(add(),remove(),replace())它们。当你在执行上述针对Fragment的事务时,你可以将事务添加到一个棧中,这个栈被activity管理,栈中的每一条都是一个Fragment的一次事务。有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键(向后导航)。
而本文简单介绍主要通过点击不同按钮实现切换对应的fragment的效果,类似用Tab的切换:
主要代码如下:
1.工程源代码显示:
2.编译后效果图
3.切换按钮布局:activity_bottom_bts.xml切换的按钮显示在底部
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<Button
android:id="@+id/movie_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/movie"/>
<Button
android:id="@+id/tv_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/tv"/>
<Button
android:id="@+id/anime_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/anime"/>
<Button
android:id="@+id/variety_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/variety" />
</LinearLayout></span></span>
4.主界面activity_main.xml
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><RelativeLayoutxmlns:androidRelativeLayoutxmlns: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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.switchfragmentdemo.MainActivity$PlaceholderFragment">
<LinearLayout
android:id="@+id/button_view_include"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
>
<includelayoutincludelayout="@layout/activity_bottom_btns" />
</LinearLayout>
<FrameLayout
android:id="@+id/fragment_content"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_marginBottom="50dp"
android:layout_below="@id/button_view_include"
>
</FrameLayout>
</RelativeLayout></span></span>
5.strings.xml
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<resources>
<stringnamestringname="app_name">SwitchFragmentDemo</string>
<stringnamestringname="hello_world">Hello world!</string>
<stringnamestringname="action_settings">Settings</string>
<string name="movie">电影</string>
<string name="tv">电视剧</string>
<string name="anime">动漫</string>
<string name="variety">综艺</string>
<stringnamestringname="movie_view">这是一个电影界面</string>
<string name="tv_view">这是一个电视剧界面</string>
<stringnamestringname="anime_view">这是一个动漫界面</string>
<stringnamestringname="variety_view">这是一个综艺界面</string>
</resources></span></span>
6.主界面实现代码:MainActivity.Java
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importjava.util.ArrayList;
importjava.util.List;
importandroid.annotation.SuppressLint;
importandroid.app.Activity;
importandroid.app.FragmentManager;
importandroid.app.FragmentTransaction;
importandroid.graphics.Color;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
@SuppressLint("NewApi")
public classMainActivity extends Activity implements OnClickListener {
private Button movieBtn, tvBtn,animeBtn, varietyBtn;
private List<Button> btnList = newArrayList<Button>();
private FragmentManager fm;
private FragmentTransaction ft;
@Override
protected void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findById();
// 進入系統默認為movie
fm = getFragmentManager();
ft = fm.beginTransaction();
setBackgroundColorById(R.id.movie_btn);
ft.replace(R.id.fragment_content,new MovieFragment());
ft.commit();
}
private void findById() {
movieBtn = (Button)this.findViewById(R.id.movie_btn);
tvBtn = (Button)this.findViewById(R.id.tv_btn);
animeBtn = (Button) this.findViewById(R.id.anime_btn);
varietyBtn = (Button)this.findViewById(R.id.variety_btn);
movieBtn.setOnClickListener(this);
tvBtn.setOnClickListener(this);
animeBtn.setOnClickListener(this);
varietyBtn.setOnClickListener(this);
btnList.add(movieBtn);
btnList.add(tvBtn);
btnList.add(animeBtn);
btnList.add(varietyBtn);
}
private void setBackgroundColorById(intbtnId) {
for (Button btn : btnList) {
if (btn.getId() == btnId){
btn.setBackgroundColor(Color.GREEN);
}else {
btn.setBackgroundColor(Color.BLUE);
}
}
}
@Override
public boolean onCreateOptionsMenu(Menumenu) {
// Inflate the menu; this addsitems to the action bar if it is present.
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
@Override
public booleanonOptionsItemSelected(MenuItem item) {
// Handle action bar item clickshere. The action bar will
// automatically handle clicks onthe Home/Up button, so long
// as you specify a parentactivity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
returnsuper.onOptionsItemSelected(item);
}
@Override
public void onClick(View v) {
// TODO Auto-generated methodstub
fm = getFragmentManager();
ft = fm.beginTransaction();
switch (v.getId()) {
case R.id.movie_btn:
setBackgroundColorById(R.id.movie_btn);
ft.replace(R.id.fragment_content,new MovieFragment());
break;
case R.id.tv_btn:
setBackgroundColorById(R.id.tv_btn);
ft.replace(R.id.fragment_content,new TVFragment());
break;
case R.id.anime_btn:
setBackgroundColorById(R.id.anime_btn);
ft.replace(R.id.fragment_content,new AnimeFragment());
break;
case R.id.variety_btn:
setBackgroundColorById(R.id.variety_btn);
ft.replace(R.id.fragment_content,new VarietyFragment());
break;
default:
break;
}
// 不要忘记提交
ft.commit();
}
}</span></span>
7.电影界面:fragment_movie.xml和MovieFragment.java
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xml version="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF00FF"
android:orientation="vertical" >
<TextView
android:id="@+id/movie_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/movie_view" />
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
import android.app.Fragment;
importandroid.os.Bundle;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
public classMovieFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_movie, null);
}
}</span></span>
8.电视剧界面:fragment_tv.xml和TVFragment.java
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00FFFF"
android:orientation="vertical">
<TextView
android:id="@+id/tv_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tv_view"
/>
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importandroid.os.Bundle;
importandroid.app.Fragment;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
public classTVFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_tv, null);
}
}</span></span>
9.动漫界面:fragment_anime和AnimeFragment.java
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00FF00"
android:orientation="vertical">
<TextView
android:id="@+id/anime_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/anime_view"
/>
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importandroid.os.Bundle;
importandroid.annotation.SuppressLint;
importandroid.app.Fragment;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
@SuppressLint("NewApi")
public classAnimeFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_anime, null);
}
}</span></span>
10.综艺界面:fragment_variety和VarietyFragment
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFF00"
android:orientation="vertical">
<TextView
android:id="@+id/variety_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/variety_view"/>
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importandroid.os.Bundle;
importandroid.app.Fragment;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
public classVarietyFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_variety, null);
}
}
</span></span>
上面为代码的具体实现。
源代码下载地址:http://download.csdn.net/detail/a123demi/7524047
Fragment要点
Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。
Fragment不能独立存在,它必须嵌入到activity中,而且Fragment的生命周期直接受所在的activity的影响。例如:当activity暂停时,它拥有的所有的Fragment们都暂停了,当activity销毁时,它拥有的所有Fragment们都被销毁。然而,当activity运行时(在onResume()之后,onPause()之前),你可以单独地操作每个Fragment,比如添加或删除或替代(add(),remove(),replace())它们。当你在执行上述针对Fragment的事务时,你可以将事务添加到一个棧中,这个栈被activity管理,栈中的每一条都是一个Fragment的一次事务。有了这个栈,就可以反向执行Fragment的事务,这样就可以在Fragment级支持“返回”键(向后导航)。
而本文简单介绍主要通过点击不同按钮实现切换对应的fragment的效果,类似用Tab的切换:
主要代码如下:
1.工程源代码显示:
2.编译后效果图
3.切换按钮布局:activity_bottom_bts.xml切换的按钮显示在底部
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<Button
android:id="@+id/movie_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/movie"/>
<Button
android:id="@+id/tv_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/tv"/>
<Button
android:id="@+id/anime_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/anime"/>
<Button
android:id="@+id/variety_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/variety" />
</LinearLayout></span></span>
4.主界面activity_main.xml
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><RelativeLayoutxmlns:androidRelativeLayoutxmlns: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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.switchfragmentdemo.MainActivity$PlaceholderFragment">
<LinearLayout
android:id="@+id/button_view_include"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
>
<includelayoutincludelayout="@layout/activity_bottom_btns" />
</LinearLayout>
<FrameLayout
android:id="@+id/fragment_content"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_marginBottom="50dp"
android:layout_below="@id/button_view_include"
>
</FrameLayout>
</RelativeLayout></span></span>
5.strings.xml
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<resources>
<stringnamestringname="app_name">SwitchFragmentDemo</string>
<stringnamestringname="hello_world">Hello world!</string>
<stringnamestringname="action_settings">Settings</string>
<string name="movie">电影</string>
<string name="tv">电视剧</string>
<string name="anime">动漫</string>
<string name="variety">综艺</string>
<stringnamestringname="movie_view">这是一个电影界面</string>
<string name="tv_view">这是一个电视剧界面</string>
<stringnamestringname="anime_view">这是一个动漫界面</string>
<stringnamestringname="variety_view">这是一个综艺界面</string>
</resources></span></span>
6.主界面实现代码:MainActivity.Java
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importjava.util.ArrayList;
importjava.util.List;
importandroid.annotation.SuppressLint;
importandroid.app.Activity;
importandroid.app.FragmentManager;
importandroid.app.FragmentTransaction;
importandroid.graphics.Color;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
@SuppressLint("NewApi")
public classMainActivity extends Activity implements OnClickListener {
private Button movieBtn, tvBtn,animeBtn, varietyBtn;
private List<Button> btnList = newArrayList<Button>();
private FragmentManager fm;
private FragmentTransaction ft;
@Override
protected void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findById();
// 進入系統默認為movie
fm = getFragmentManager();
ft = fm.beginTransaction();
setBackgroundColorById(R.id.movie_btn);
ft.replace(R.id.fragment_content,new MovieFragment());
ft.commit();
}
private void findById() {
movieBtn = (Button)this.findViewById(R.id.movie_btn);
tvBtn = (Button)this.findViewById(R.id.tv_btn);
animeBtn = (Button) this.findViewById(R.id.anime_btn);
varietyBtn = (Button)this.findViewById(R.id.variety_btn);
movieBtn.setOnClickListener(this);
tvBtn.setOnClickListener(this);
animeBtn.setOnClickListener(this);
varietyBtn.setOnClickListener(this);
btnList.add(movieBtn);
btnList.add(tvBtn);
btnList.add(animeBtn);
btnList.add(varietyBtn);
}
private void setBackgroundColorById(intbtnId) {
for (Button btn : btnList) {
if (btn.getId() == btnId){
btn.setBackgroundColor(Color.GREEN);
}else {
btn.setBackgroundColor(Color.BLUE);
}
}
}
@Override
public boolean onCreateOptionsMenu(Menumenu) {
// Inflate the menu; this addsitems to the action bar if it is present.
getMenuInflater().inflate(R.menu.main,menu);
return true;
}
@Override
public booleanonOptionsItemSelected(MenuItem item) {
// Handle action bar item clickshere. The action bar will
// automatically handle clicks onthe Home/Up button, so long
// as you specify a parentactivity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
returnsuper.onOptionsItemSelected(item);
}
@Override
public void onClick(View v) {
// TODO Auto-generated methodstub
fm = getFragmentManager();
ft = fm.beginTransaction();
switch (v.getId()) {
case R.id.movie_btn:
setBackgroundColorById(R.id.movie_btn);
ft.replace(R.id.fragment_content,new MovieFragment());
break;
case R.id.tv_btn:
setBackgroundColorById(R.id.tv_btn);
ft.replace(R.id.fragment_content,new TVFragment());
break;
case R.id.anime_btn:
setBackgroundColorById(R.id.anime_btn);
ft.replace(R.id.fragment_content,new AnimeFragment());
break;
case R.id.variety_btn:
setBackgroundColorById(R.id.variety_btn);
ft.replace(R.id.fragment_content,new VarietyFragment());
break;
default:
break;
}
// 不要忘记提交
ft.commit();
}
}</span></span>
7.电影界面:fragment_movie.xml和MovieFragment.java
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xml version="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF00FF"
android:orientation="vertical" >
<TextView
android:id="@+id/movie_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/movie_view" />
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
import android.app.Fragment;
importandroid.os.Bundle;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
public classMovieFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_movie, null);
}
}</span></span>
8.电视剧界面:fragment_tv.xml和TVFragment.java
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00FFFF"
android:orientation="vertical">
<TextView
android:id="@+id/tv_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tv_view"
/>
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importandroid.os.Bundle;
importandroid.app.Fragment;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
public classTVFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_tv, null);
}
}</span></span>
9.动漫界面:fragment_anime和AnimeFragment.java
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00FF00"
android:orientation="vertical">
<TextView
android:id="@+id/anime_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/anime_view"
/>
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importandroid.os.Bundle;
importandroid.annotation.SuppressLint;
importandroid.app.Fragment;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
@SuppressLint("NewApi")
public classAnimeFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_anime, null);
}
}</span></span>
10.综艺界面:fragment_variety和VarietyFragment
[html] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;"><?xmlversionxmlversion="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:androidLinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFF00"
android:orientation="vertical">
<TextView
android:id="@+id/variety_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/variety_view"/>
</LinearLayout></span></span>
[java] view
plain copy
<span style="font-family:SimSun;"><span style="font-size:18px;">packagecom.example.myandroidswitchbtndemo;
importandroid.os.Bundle;
importandroid.app.Fragment;
importandroid.view.LayoutInflater;
importandroid.view.View;
importandroid.view.ViewGroup;
public classVarietyFragment extends Fragment {
<spanstyle="white-space:pre"> </span>@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_variety, null);
}
}
</span></span>
上面为代码的具体实现。
源代码下载地址:http://download.csdn.net/detail/a123demi/7524047
相关文章推荐
- Android Fragment实现按钮间的切换
- Android 使用ViewPager和RadioGroup配合Fragment实现标签页,可点击按钮切换、滑动切换。
- Android Fragment实现按钮间的切换
- Android Fragment实现按钮间的切换
- Android使用Fragment来实现TabHost的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- Android使用Fragment来实现TabHost的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- 【Android 界面效果3】Android_UI_点击按钮切换背景效果实现
- android Button 切换背景,实现动态按钮和按钮颜色渐变
- Android - ImageButton单击切换按钮图片效果的实现
- Android使用Fragment来实现ViewPager的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- Android使用Fragment来实现TabHost的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- Android 一个按钮两次单击触发两个不同事件并实现两个View在同一界面切换
- Android - ImageButton单击切换按钮图片效果的实现
- Android之ActionBar、Tabs、Fragment、ViewPager实现标签页切换并缓存页面
- Android 笔记:ImageButton单击切换按钮图片效果的实现(转)
- Android使用Fragment来实现TabHost的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信
- [Android基础系列]轻松实现按钮的鼠标悬停背景切换
- Android_UI_点击按钮切换背景效果实现
- Android_UI_点击按钮切换背景效果实现
- Android_UI_点击按钮切换背景效果实现