setting vod history

pull/320/head
okjack 2 years ago
parent 0c67a5d484
commit b04356ad55
  1. 5
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java
  2. 31
      app/src/leanback/java/com/fongmi/android/tv/ui/custom/CustomTitleView.java
  3. 17
      app/src/leanback/res/layout/activity_home.xml

@ -114,6 +114,7 @@ public class HomeActivity extends BaseActivity implements CustomTitleView.Listen
@Override
protected void initEvent() {
mBinding.title.setListener(this);
mBinding.settingVodHistory.setOnClickListener(this::onSettingVodHistory);
mBinding.recycler.addOnChildViewHolderSelectedListener(new OnChildViewHolderSelectedListener() {
@Override
public void onChildViewHolderSelected(@NonNull RecyclerView parent, @Nullable RecyclerView.ViewHolder child, int position, int subposition) {
@ -137,6 +138,7 @@ public class HomeActivity extends BaseActivity implements CustomTitleView.Listen
private void setTitleView() {
mBinding.homeSiteLock.setVisibility(Setting.isHomeSiteLock() ? View.VISIBLE : View.GONE);
mBinding.settingVodHistory.setVisibility(Setting.isHomeSiteLock() ? View.GONE : View.VISIBLE);
}
private void setRecyclerView() {
@ -167,8 +169,7 @@ public class HomeActivity extends BaseActivity implements CustomTitleView.Listen
recommend = homeRecommend;
}
@Override
public void onSettingVodHistory() {
private void onSettingVodHistory(View view) {
HistoryDialog.create(this).type(0).show();
}

@ -12,15 +12,10 @@ import androidx.appcompat.widget.AppCompatTextView;
import com.fongmi.android.tv.App;
import com.fongmi.android.tv.R;
import com.fongmi.android.tv.Setting;
import com.fongmi.android.tv.api.config.VodConfig;
import com.fongmi.android.tv.bean.Site;
import com.fongmi.android.tv.impl.SiteCallback;
import com.fongmi.android.tv.utils.KeyUtil;
import com.fongmi.android.tv.utils.ResUtil;
import java.util.List;
public class CustomTitleView extends AppCompatTextView {
private Listener listener;
@ -42,7 +37,7 @@ public class CustomTitleView extends AppCompatTextView {
}
private boolean hasEvent(KeyEvent event) {
return KeyUtil.isEnterKey(event) || KeyUtil.isLeftKey(event) || KeyUtil.isRightKey(event) || (KeyUtil.isUpKey(event) && !coolDown) || (KeyUtil.isDownKey(event) && !coolDown);
return KeyUtil.isEnterKey(event) || (KeyUtil.isUpKey(event) && !coolDown);
}
@Override
@ -54,8 +49,6 @@ public class CustomTitleView extends AppCompatTextView {
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (Setting.isHomeSiteLock()) return false;
if (VodConfig.get().getSites().isEmpty()) return false;
if (hasEvent(event)) return onKeyDown(event);
else return super.dispatchKeyEvent(event);
}
@ -63,14 +56,8 @@ public class CustomTitleView extends AppCompatTextView {
private boolean onKeyDown(KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_UP && KeyUtil.isEnterKey(event)) {
listener.showDialog();
} else if (event.getAction() == KeyEvent.ACTION_DOWN && KeyUtil.isLeftKey(event)) {
listener.setSite(getSite(true));
} else if (event.getAction() == KeyEvent.ACTION_DOWN && KeyUtil.isRightKey(event)) {
listener.setSite(getSite(false));
} else if (event.getAction() == KeyEvent.ACTION_DOWN && KeyUtil.isUpKey(event)) {
onKeyUp();
} else if (event.getAction() == KeyEvent.ACTION_DOWN && KeyUtil.isDownKey(event)) {
onKeyDown();
}
return true;
}
@ -81,26 +68,10 @@ public class CustomTitleView extends AppCompatTextView {
coolDown = true;
}
private void onKeyDown() {
App.post(() -> coolDown = false, 3000);
listener.onSettingVodHistory();
coolDown = true;
}
private Site getSite(boolean next) {
List<Site> items = VodConfig.get().getSites();
int position = VodConfig.getHomeIndex();
if (next) position = position > 0 ? --position : items.size() - 1;
else position = position < items.size() - 1 ? ++position : 0;
return items.get(position);
}
public interface Listener extends SiteCallback {
void showDialog();
void onRefresh();
void onSettingVodHistory();
}
}

@ -35,14 +35,27 @@
<ImageView
android:id="@+id/homeSiteLock"
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="bottom"
android:layout_marginRight="6dp"
android:layout_marginBottom="2dp"
android:background="@drawable/ic_home_lock"
android:focusable="false"
android:visibility="gone"
tools:visibility="visible" />
<ImageView
android:id="@+id/settingVodHistory"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="bottom"
android:layout_marginBottom="2dp"
android:background="@drawable/selector_image"
android:src="@drawable/ic_setting_vod_history"
android:focusable="true"
android:visibility="gone"
tools:visibility="visible" />
</LinearLayout>

Loading…
Cancel
Save