use view binding for three more activities
This commit is contained in:
parent
36f44095c3
commit
eb1a4442f4
3 changed files with 31 additions and 53 deletions
|
|
@ -4,14 +4,13 @@ import android.os.Bundle;
|
|||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.afollestad.materialcab.MaterialCab;
|
||||
import com.dkanada.gramophone.databinding.ActivityPlaylistDetailBinding;
|
||||
import com.h6ah4i.android.widget.advrecyclerview.animator.GeneralItemAnimator;
|
||||
import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemAnimator;
|
||||
import com.h6ah4i.android.widget.advrecyclerview.draggable.RecyclerViewDragDropManager;
|
||||
|
|
@ -38,20 +37,10 @@ import org.jellyfin.apiclient.model.playlists.PlaylistItemQuery;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity implements CabHolder {
|
||||
|
||||
@NonNull
|
||||
public static String EXTRA_PLAYLIST = "extra_playlist";
|
||||
|
||||
@BindView(R.id.recycler_view)
|
||||
RecyclerView recyclerView;
|
||||
@BindView(R.id.toolbar)
|
||||
Toolbar toolbar;
|
||||
@BindView(android.R.id.empty)
|
||||
TextView empty;
|
||||
ActivityPlaylistDetailBinding binding;
|
||||
|
||||
private Playlist playlist;
|
||||
|
||||
|
|
@ -64,10 +53,13 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
|
|||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setDrawUnderStatusbar();
|
||||
ButterKnife.bind(this);
|
||||
|
||||
binding = ActivityPlaylistDetailBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
setDrawUnderStatusbar();
|
||||
setStatusbarColorAuto();
|
||||
|
||||
setNavigationbarColorAuto();
|
||||
setTaskDescriptionColorAuto();
|
||||
|
||||
|
|
@ -93,8 +85,8 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
|
|||
}
|
||||
|
||||
private void setUpRecyclerView() {
|
||||
ViewUtil.setUpFastScrollRecyclerViewColor(this, ((FastScrollRecyclerView) recyclerView), ThemeStore.accentColor(this));
|
||||
recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
||||
ViewUtil.setUpFastScrollRecyclerViewColor(this, ((FastScrollRecyclerView) binding.recyclerView), ThemeStore.accentColor(this));
|
||||
binding.recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
||||
|
||||
recyclerViewDragDropManager = new RecyclerViewDragDropManager();
|
||||
final GeneralItemAnimator animator = new RefactoredDefaultItemAnimator();
|
||||
|
|
@ -107,10 +99,10 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
|
|||
|
||||
wrappedAdapter = recyclerViewDragDropManager.createWrappedAdapter(adapter);
|
||||
|
||||
recyclerView.setAdapter(wrappedAdapter);
|
||||
recyclerView.setItemAnimator(animator);
|
||||
binding.recyclerView.setAdapter(wrappedAdapter);
|
||||
binding.recyclerView.setItemAnimator(animator);
|
||||
|
||||
recyclerViewDragDropManager.attachRecyclerView(recyclerView);
|
||||
recyclerViewDragDropManager.attachRecyclerView(binding.recyclerView);
|
||||
|
||||
adapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
|
||||
@Override
|
||||
|
|
@ -122,8 +114,8 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
|
|||
}
|
||||
|
||||
private void setUpToolbar() {
|
||||
toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
||||
setSupportActionBar(toolbar);
|
||||
binding.toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
||||
setSupportActionBar(binding.toolbar);
|
||||
//noinspection ConstantConditions
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
setToolbarTitle(playlist.name);
|
||||
|
|
@ -172,13 +164,13 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
|
|||
if (cab != null && cab.isActive()) {
|
||||
cab.finish();
|
||||
} else {
|
||||
recyclerView.stopScroll();
|
||||
binding.recyclerView.stopScroll();
|
||||
super.onBackPressed();
|
||||
}
|
||||
}
|
||||
|
||||
private void checkIsEmpty() {
|
||||
empty.setVisibility(adapter.getItemCount() == 0 ? View.VISIBLE : View.GONE);
|
||||
binding.empty.setVisibility(adapter.getItemCount() == 0 ? View.VISIBLE : View.GONE);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -197,11 +189,8 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
|
|||
recyclerViewDragDropManager = null;
|
||||
}
|
||||
|
||||
if (recyclerView != null) {
|
||||
recyclerView.setItemAnimator(null);
|
||||
recyclerView.setAdapter(null);
|
||||
recyclerView = null;
|
||||
}
|
||||
binding.recyclerView.setItemAnimator(null);
|
||||
binding.recyclerView.setAdapter(null);
|
||||
|
||||
if (wrappedAdapter != null) {
|
||||
WrapperAdapterUtils.releaseAll(wrappedAdapter);
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||
|
||||
import com.dkanada.gramophone.R;
|
||||
import com.dkanada.gramophone.adapter.SearchAdapter;
|
||||
import com.dkanada.gramophone.databinding.ActivitySearchBinding;
|
||||
import com.dkanada.gramophone.interfaces.MediaCallback;
|
||||
import com.dkanada.gramophone.model.Album;
|
||||
import com.dkanada.gramophone.model.Artist;
|
||||
|
|
@ -33,21 +34,10 @@ import java.util.HashMap;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
public class SearchActivity extends AbsMusicServiceActivity implements SearchView.OnQueryTextListener {
|
||||
|
||||
public static final String QUERY = "query";
|
||||
|
||||
@BindView(R.id.recycler_view)
|
||||
RecyclerView recyclerView;
|
||||
|
||||
@BindView(R.id.toolbar)
|
||||
Toolbar toolbar;
|
||||
|
||||
@BindView(android.R.id.empty)
|
||||
TextView empty;
|
||||
ActivitySearchBinding binding;
|
||||
|
||||
SearchView searchView;
|
||||
|
||||
|
|
@ -59,26 +49,28 @@ public class SearchActivity extends AbsMusicServiceActivity implements SearchVie
|
|||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_search);
|
||||
setDrawUnderStatusbar();
|
||||
ButterKnife.bind(this);
|
||||
|
||||
binding = ActivitySearchBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
setDrawUnderStatusbar();
|
||||
setStatusbarColorAuto();
|
||||
|
||||
setNavigationbarColorAuto();
|
||||
setTaskDescriptionColorAuto();
|
||||
|
||||
recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
||||
binding.recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
||||
adapter = new SearchAdapter(this, Collections.emptyList());
|
||||
adapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
|
||||
@Override
|
||||
public void onChanged() {
|
||||
super.onChanged();
|
||||
empty.setVisibility(adapter.getItemCount() < 1 ? View.VISIBLE : View.GONE);
|
||||
binding.empty.setVisibility(adapter.getItemCount() < 1 ? View.VISIBLE : View.GONE);
|
||||
}
|
||||
});
|
||||
|
||||
recyclerView.setAdapter(adapter);
|
||||
recyclerView.setOnTouchListener((v, event) -> {
|
||||
binding.recyclerView.setAdapter(adapter);
|
||||
binding.recyclerView.setOnTouchListener((v, event) -> {
|
||||
hideSoftKeyboard();
|
||||
return false;
|
||||
});
|
||||
|
|
@ -99,8 +91,8 @@ public class SearchActivity extends AbsMusicServiceActivity implements SearchVie
|
|||
}
|
||||
|
||||
private void setUpToolBar() {
|
||||
toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
||||
setSupportActionBar(toolbar);
|
||||
binding.toolbar.setBackgroundColor(ThemeStore.primaryColor(this));
|
||||
setSupportActionBar(binding.toolbar);
|
||||
// noinspection ConstantConditions
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,8 +26,6 @@ import org.jellyfin.apiclient.model.logging.ILogger;
|
|||
import org.jellyfin.apiclient.model.serialization.GsonJsonSerializer;
|
||||
import org.jellyfin.apiclient.model.serialization.IJsonSerializer;
|
||||
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
public class SplashActivity extends AbsBaseActivity {
|
||||
public static final String TAG = SplashActivity.class.getSimpleName();
|
||||
|
||||
|
|
@ -39,7 +37,6 @@ public class SplashActivity extends AbsBaseActivity {
|
|||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_splash);
|
||||
setDrawUnderStatusbar();
|
||||
ButterKnife.bind(this);
|
||||
|
||||
setStatusbarColorAuto();
|
||||
setNavigationbarColorAuto();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue