Commit 1c2597cf by 段启岩

全局替换为viewBinding+dataBinding

parent 119ba252
......@@ -25,6 +25,14 @@ android {
targetCompatibility = 1.8
}
viewBinding {
enabled true
}
dataBinding {
enabled true
}
}
dependencies {
......
......@@ -24,4 +24,7 @@ public class ExampleInstrumentedTest {
assertEquals("cn.yunliyunwai.beyondclouds", appContext.getPackageName());
}
}
......@@ -14,6 +14,7 @@ import com.google.android.material.bottomnavigation.BottomNavigationView;
import java.util.ArrayList;
import java.util.List;
import cn.yunliyunwai.beyondclouds.databinding.ActivityMainBinding;
import cn.yunliyunwai.beyondclouds.ui.DynamicFragment;
import cn.yunliyunwai.beyondclouds.ui.HomeFragment;
import cn.yunliyunwai.beyondclouds.ui.MyFragment;
......@@ -27,11 +28,15 @@ public class MainActivity extends AppCompatActivity implements BottomNavigationV
private MainViewModel mainViewModel;
private ActivityMainBinding binding;
@Override
protected void onCreate(Bundle savedInstanceState) {
StatusBarUtils.setWindowStatusBarColor(this, R.color.colorStatusBar);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
binding = ActivityMainBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
mainViewModel = new ViewModelProvider(this, MainViewModel.factory).get(MainViewModel.class);
......@@ -58,9 +63,8 @@ public class MainActivity extends AppCompatActivity implements BottomNavigationV
}
BottomNavigationView navigationView = findViewById(R.id.bottom_navigation_view);
navigationView.setOnNavigationItemSelectedListener(this);
navigationView.setItemIconTintList(null);
binding.bottomNavigationView.setOnNavigationItemSelectedListener(this);
binding.bottomNavigationView.setItemIconTintList(null);
}
@Override
......
......@@ -9,14 +9,17 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import cn.yunliyunwai.beyondclouds.R;
import cn.yunliyunwai.beyondclouds.databinding.FragmentDynamicBinding;
public class DynamicFragment extends Fragment {
private FragmentDynamicBinding binding;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_dynamic, container, false);
binding = FragmentDynamicBinding.inflate(inflater, container, false);
return binding.getRoot();
}
@Override
......
......@@ -5,7 +5,6 @@ import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
......@@ -13,9 +12,7 @@ import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentStatePagerAdapter;
import androidx.lifecycle.ViewModelProvider;
import androidx.viewpager.widget.ViewPager;
import net.lucode.hackware.magicindicator.MagicIndicator;
import net.lucode.hackware.magicindicator.ViewPagerHelper;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator;
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter;
......@@ -25,16 +22,18 @@ import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerTit
import cn.yunliyunwai.beyondclouds.R;
import cn.yunliyunwai.beyondclouds.components.CommonPagerIndicator;
import cn.yunliyunwai.beyondclouds.components.ScaleTransitionPagerTitleView;
import cn.yunliyunwai.beyondclouds.databinding.FragmentCategoryBinding;
import cn.yunliyunwai.beyondclouds.databinding.FragmentHomeBinding;
public class HomeFragment extends Fragment {
ViewPager viewPager;
MagicIndicator magicIndicator;
private HomeFragmentViewModel homeFragmentViewModel = null;
private FragmentHomeBinding binding;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_home, container, false);
binding = FragmentHomeBinding.inflate(inflater, container, false);
return binding.getRoot();
}
@Override
......@@ -44,10 +43,8 @@ public class HomeFragment extends Fragment {
homeFragmentViewModel = new ViewModelProvider(this, HomeFragmentViewModel.factory).get(HomeFragmentViewModel.class);
homeFragmentViewModel.initCategories();
magicIndicator = view.findViewById(R.id.magic_indicator);
viewPager = view.findViewById(R.id.view_pager);
viewPager.setAdapter(new CategoryFragmentAdapter(getChildFragmentManager(), FragmentStatePagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT));
binding.viewPager.setAdapter(new CategoryFragmentAdapter(getChildFragmentManager(), FragmentStatePagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT));
CommonNavigator commonNavigator = new CommonNavigator(requireContext());
commonNavigator.setBackgroundColor(0xffffffff);
commonNavigator.setAdapter(new CommonNavigatorAdapter() {
......@@ -65,7 +62,7 @@ public class HomeFragment extends Fragment {
scaleTransitionPagerTitleView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
viewPager.setCurrentItem(index);
binding.viewPager.setCurrentItem(index);
}
});
return scaleTransitionPagerTitleView;
......@@ -82,8 +79,8 @@ public class HomeFragment extends Fragment {
return indicator;
}
});
magicIndicator.setNavigator(commonNavigator);
ViewPagerHelper.bind(magicIndicator, viewPager);
binding.magicIndicator.setNavigator(commonNavigator);
ViewPagerHelper.bind(binding.magicIndicator, binding.viewPager);
}
class CategoryFragmentAdapter extends FragmentStatePagerAdapter {
......@@ -109,7 +106,7 @@ public class HomeFragment extends Fragment {
public static class CategoryFragment extends Fragment {
private TextView textView;
private FragmentCategoryBinding binding;
private String text;
static CategoryFragment newInstance() {
......@@ -128,14 +125,14 @@ public class HomeFragment extends Fragment {
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_category, container, false);
binding = FragmentCategoryBinding.inflate(inflater, container, false);
return binding.getRoot();
}
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
textView = view.findViewById(R.id.txt_category);
textView.setText(text);
binding.txtCategory.setText(text);
}
}
}
......@@ -9,14 +9,17 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import cn.yunliyunwai.beyondclouds.R;
import cn.yunliyunwai.beyondclouds.databinding.FragmentMyBinding;
public class MyFragment extends Fragment {
private FragmentMyBinding binding;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_my, container, false);
binding = FragmentMyBinding.inflate(inflater, container, false);
return binding.getRoot();
}
@Override
......
......@@ -9,14 +9,17 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import cn.yunliyunwai.beyondclouds.R;
import cn.yunliyunwai.beyondclouds.databinding.FragmentProjectBinding;
public class ProjectFragment extends Fragment {
private FragmentProjectBinding binding;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_project, container, false);
binding = FragmentProjectBinding.inflate(inflater, container, false);
return binding.getRoot();
}
@Override
......
......@@ -9,14 +9,17 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import cn.yunliyunwai.beyondclouds.R;
import cn.yunliyunwai.beyondclouds.databinding.FragmentQaBinding;
public class QAFragment extends Fragment {
private FragmentQaBinding binding;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_qa, container, false);
binding = FragmentQaBinding.inflate(inflater, container, false);
return binding.getRoot();
}
@Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment