本文主要是介绍Android开发学习(8)--BeatBox(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 前言
- 一.实验步骤
- 1 创建主布局文件(res/layout/fragment_beat_box.xml)
- 2 创建BeatBoxFragment(BeatBoxFragment.java)
- 3启用数据绑定(app/build.gradle)
- 4 把一般布局改造为数据绑定布局(res/layout/fragment_beat_box.xml)
- 5 实例化绑定类(BeatBoxFragment.java)
- 6 创建声音布局文件(res/layout/list_item_sound.xml)
- 7 导入assets
- 8 处理assets
- a.创建BeatBox类(BeatBox.java)
- b 创建BeatBox实例(BeatBoxFragment.java)
- 9 使用assets
- a 创建Sound对象(Sound.java)
- b创建Sound列表(BeatBox.java)
- c绑定Sound列表(BeatBoxFragment.java)
- 10绑定数据
- 11.绑定至视图模型
- a 声明视图模型属性(list_item_sound.xml)
- b 绑定按钮文件名(list_item_sound.xml)
- c 关联使用视图模型(BeatBoxFragment.java)
- 二、模拟器运行结果
- 三、真机运行结果
前言
本章,我们学习数据绑定(data binding)这个新工具。数据绑定只是一个工具,它不会告诉 你怎么去用。不过,我们知道,所以,我们会教你如何在项目里使用它:实现Model-View-ViewModel (MVVM)新架构。此外,你还会学习使用资源系统(assets system)存储声音文件。
我们将在本章开始开发一个叫作BeatBox的新应用。
一.实验步骤
1 创建主布局文件(res/layout/fragment_beat_box.xml)
<android.support.v7.widget.RecyclerView
xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="match_parent"/>
2 创建BeatBoxFragment(BeatBoxFragment.java)
现在,在com.bignerdranch.android.beatbox包中,创建名为BeatBoxFragment的新Fragment.
public class BeatBoxFragment extends Fragment {
public static BeatBoxFragment newInstance() {
return new BeatBoxFragment();
}
}
这个fragment实现先空着,稍后处理。
3启用数据绑定(app/build.gradle)
versionCode 1 versionName "1.0" testinstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } dataBinding { enabled = true } }
dependencies {
4 把一般布局改造为数据绑定布局(res/layout/fragment_beat_box.xml)
<layout
xmlns:android="http://schemas.android.com/apk/res/android">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</layout>
5 实例化绑定类(BeatBoxFragment.java)
public class BeatBoxFragment extends Fragment { public static BeatBoxFragment newinstance() { return new BeatBoxFragment(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { FragmentBeatBoxBinding binding = DataBindingUtil .inflate(inflater, R.layout.fragment_beat_box, container, false); return binding.getRoot(); } }
public class BeatBoxFragment extends Fragment {
public static BeatBoxFragment newinstance() {
return new
这篇关于Android开发学习(8)--BeatBox(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!