Skip to content

Commit 93a00c3

Browse files
Add ViewBinding sample in Fragment #19
1 parent 0b901e5 commit 93a00c3

File tree

3 files changed

+21
-13
lines changed

3 files changed

+21
-13
lines changed

app/build.gradle

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
apply plugin: 'com.android.application'
2-
32
apply plugin: 'kotlin-android'
4-
53
apply plugin: 'kotlin-android-extensions'
64

75
android {
86
compileSdkVersion 30
7+
98
defaultConfig {
109
applicationId "com.dylanc.loadinghelper.sample"
1110
minSdkVersion 21
@@ -14,29 +13,34 @@ android {
1413
versionName "1.0.1"
1514
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
1615
}
16+
1717
buildTypes {
1818
release {
1919
minifyEnabled true
2020
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
2121
}
2222
}
23+
2324
compileOptions {
2425
sourceCompatibility JavaVersion.VERSION_1_8
2526
targetCompatibility JavaVersion.VERSION_1_8
2627
}
28+
29+
viewBinding {
30+
enabled = true
31+
}
2732
}
2833

2934
dependencies {
3035
implementation fileTree(dir: 'libs', include: ['*.jar'])
31-
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
3236
implementation project(':library')
3337
implementation 'androidx.appcompat:appcompat:1.2.0'
34-
implementation 'androidx.recyclerview:recyclerview:1.1.0'
38+
implementation 'androidx.recyclerview:recyclerview:1.2.0'
3539
implementation 'androidx.cardview:cardview:1.0.0'
36-
implementation 'com.google.android.material:material:1.2.1'
40+
implementation 'com.google.android.material:material:1.3.0'
3741
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
38-
implementation 'com.github.bumptech.glide:glide:4.11.0'
39-
testImplementation 'junit:junit:4.13.1'
42+
implementation 'com.github.bumptech.glide:glide:4.12.0'
43+
testImplementation 'junit:junit:4.13.2'
4044
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
4145
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
4246
}

app/src/main/java/com/dylanc/loadinghelper/sample/ui/fragment/EmptyFragment.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,21 +26,23 @@
2626
import androidx.fragment.app.Fragment;
2727

2828
import com.dylanc.loadinghelper.LoadingHelper;
29-
import com.dylanc.loadinghelper.sample.R;
29+
import com.dylanc.loadinghelper.sample.databinding.LayoutContentBinding;
3030
import com.dylanc.loadinghelper.sample.utils.HttpUtils;
3131

3232
/**
3333
* @author Dylan Cai
3434
*/
35+
@SuppressWarnings("FieldCanBeLocal")
3536
public class EmptyFragment extends Fragment implements LoadingHelper.OnReloadListener {
3637

38+
private LayoutContentBinding binding;
3739
private LoadingHelper loadingHelper;
3840

3941
@Nullable
4042
@Override
4143
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
42-
View view = inflater.inflate(R.layout.layout_content, container, false);
43-
loadingHelper = new LoadingHelper(view);
44+
binding = LayoutContentBinding.inflate(inflater, container, false);
45+
loadingHelper = new LoadingHelper(binding.getRoot());
4446
loadingHelper.setOnReloadListener(this);
4547
return loadingHelper.getDecorView();
4648
}

app/src/main/java/com/dylanc/loadinghelper/sample/ui/fragment/TimeoutFragment.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,23 +26,25 @@
2626
import androidx.fragment.app.Fragment;
2727

2828
import com.dylanc.loadinghelper.LoadingHelper;
29-
import com.dylanc.loadinghelper.sample.R;
3029
import com.dylanc.loadinghelper.sample.adapter.TimeoutAdapter;
30+
import com.dylanc.loadinghelper.sample.databinding.LayoutContentBinding;
3131
import com.dylanc.loadinghelper.sample.utils.HttpUtils;
3232

3333
/**
3434
* @author Dylan Cai
3535
*/
36+
@SuppressWarnings("FieldCanBeLocal")
3637
public class TimeoutFragment extends Fragment implements LoadingHelper.OnReloadListener {
3738

3839
public static final String VIEW_TYPE_TIMEOUT = "timeout";
40+
private LayoutContentBinding binding;
3941
private LoadingHelper loadingHelper;
4042

4143
@Nullable
4244
@Override
4345
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
44-
View view = inflater.inflate(R.layout.layout_content, container, false);
45-
loadingHelper = new LoadingHelper(view);
46+
binding = LayoutContentBinding.inflate(inflater, container, false);
47+
loadingHelper = new LoadingHelper(binding.getRoot());
4648
loadingHelper.register(VIEW_TYPE_TIMEOUT, new TimeoutAdapter());
4749
loadingHelper.setOnReloadListener(this);
4850
return loadingHelper.getDecorView();

0 commit comments

Comments
 (0)