pull/1/head
SDL 4 years ago
parent bc72e43c9d
commit 883808187c
  1. 14
      app/src/main/java/com/github/tvbox/osc/ui/dialog/SelectDialog.java
  2. 32
      app/src/main/java/com/github/tvbox/osc/ui/fragment/ModelSettingFragment.java
  3. 6
      app/src/main/res/drawable/dialog_button_01.xml
  4. 6
      app/src/main/res/layout/dialog_select.xml
  5. 66
      app/src/main/res/layout/dialog_xwalk.xml
  6. 2
      app/src/main/res/layout/item_dialog_select.xml
  7. 2
      app/src/main/res/values/colors.xml
  8. 1
      app/src/main/res/values/dimens.xml

@ -5,6 +5,7 @@ import android.os.Bundle;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.DiffUtil;
import com.github.tvbox.osc.R;
import com.github.tvbox.osc.ui.adapter.SelectDialogAdapter;
@ -12,6 +13,8 @@ import com.owen.tvrecyclerview.widget.TvRecyclerView;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class SelectDialog<T> extends BaseDialog {
public SelectDialog(@NonNull @NotNull Context context) {
super(context);
@ -27,8 +30,17 @@ public class SelectDialog<T> extends BaseDialog {
((TextView) findViewById(R.id.title)).setText(tip);
}
public void setAdapter(SelectDialogAdapter adapter) {
public void setAdapter(SelectDialogAdapter.SelectDialogInterface<T> sourceBeanSelectDialogInterface, DiffUtil.ItemCallback<T> sourceBeanItemCallback, List<T> data, int select) {
SelectDialogAdapter<T> adapter = new SelectDialogAdapter(sourceBeanSelectDialogInterface, sourceBeanItemCallback);
adapter.setData(data, select);
TvRecyclerView tvRecyclerView = ((TvRecyclerView) findViewById(R.id.list));
tvRecyclerView.setAdapter(adapter);
tvRecyclerView.setSelectedPosition(select);
tvRecyclerView.post(new Runnable() {
@Override
public void run() {
tvRecyclerView.scrollToPosition(select);
}
});
}
}

@ -170,7 +170,7 @@ public class ModelSettingFragment extends BaseLazyFragment {
if (sites.size() > 0) {
SelectDialog<SourceBean> dialog = new SelectDialog<>(mActivity);
dialog.setTip("请选择首页数据源");
SelectDialogAdapter<SourceBean> selectAdapter = new SelectDialogAdapter(new SelectDialogAdapter.SelectDialogInterface<SourceBean>() {
dialog.setAdapter(new SelectDialogAdapter.SelectDialogInterface<SourceBean>() {
@Override
public void click(SourceBean value, int pos) {
ApiConfig.get().setSourceBean(value);
@ -191,9 +191,7 @@ public class ModelSettingFragment extends BaseLazyFragment {
public boolean areContentsTheSame(@NonNull @NotNull SourceBean oldItem, @NonNull @NotNull SourceBean newItem) {
return oldItem.getKey().equals(newItem.getKey());
}
});
selectAdapter.setData(sites, sites.indexOf(ApiConfig.get().getHomeSourceBean()));
dialog.setAdapter(selectAdapter);
}, sites, sites.indexOf(ApiConfig.get().getHomeSourceBean()));
dialog.show();
}
}
@ -240,9 +238,9 @@ public class ModelSettingFragment extends BaseLazyFragment {
}
}
SelectDialog<SourceBean> dialog = new SelectDialog<>(mActivity);
dialog.setTip("请选择Ijk解码");
SelectDialogAdapter<IJKCode> selectAdapter = new SelectDialogAdapter(new SelectDialogAdapter.SelectDialogInterface<IJKCode>() {
SelectDialog<IJKCode> dialog = new SelectDialog<>(mActivity);
dialog.setTip("请选择IJK解码");
dialog.setAdapter(new SelectDialogAdapter.SelectDialogInterface<IJKCode>() {
@Override
public void click(IJKCode value, int pos) {
value.selected(true);
@ -263,9 +261,7 @@ public class ModelSettingFragment extends BaseLazyFragment {
public boolean areContentsTheSame(@NonNull @NotNull IJKCode oldItem, @NonNull @NotNull IJKCode newItem) {
return oldItem.getName().equals(newItem.getName());
}
});
selectAdapter.setData(ijkCodes, defaultPos);
dialog.setAdapter(selectAdapter);
}, ijkCodes, defaultPos);
dialog.show();
}
});
@ -278,9 +274,9 @@ public class ModelSettingFragment extends BaseLazyFragment {
players.add(0);
players.add(1);
players.add(2);
SelectDialog<SourceBean> dialog = new SelectDialog<>(mActivity);
SelectDialog<Integer> dialog = new SelectDialog<>(mActivity);
dialog.setTip("请选择默认播放器");
SelectDialogAdapter<Integer> selectAdapter = new SelectDialogAdapter(new SelectDialogAdapter.SelectDialogInterface<Integer>() {
dialog.setAdapter(new SelectDialogAdapter.SelectDialogInterface<Integer>() {
@Override
public void click(Integer value, int pos) {
Hawk.put(HawkConfig.PLAY_TYPE, value);
@ -302,9 +298,7 @@ public class ModelSettingFragment extends BaseLazyFragment {
public boolean areContentsTheSame(@NonNull @NotNull Integer oldItem, @NonNull @NotNull Integer newItem) {
return oldItem.intValue() == newItem.intValue();
}
});
selectAdapter.setData(players, defaultPos);
dialog.setAdapter(selectAdapter);
}, players, defaultPos);
dialog.show();
}
});
@ -316,9 +310,9 @@ public class ModelSettingFragment extends BaseLazyFragment {
ArrayList<Integer> renders = new ArrayList<>();
renders.add(0);
renders.add(1);
SelectDialog<SourceBean> dialog = new SelectDialog<>(mActivity);
SelectDialog<Integer> dialog = new SelectDialog<>(mActivity);
dialog.setTip("请选择默认渲染方式");
SelectDialogAdapter<Integer> selectAdapter = new SelectDialogAdapter(new SelectDialogAdapter.SelectDialogInterface<Integer>() {
dialog.setAdapter(new SelectDialogAdapter.SelectDialogInterface<Integer>() {
@Override
public void click(Integer value, int pos) {
Hawk.put(HawkConfig.PLAY_RENDER, value);
@ -340,9 +334,7 @@ public class ModelSettingFragment extends BaseLazyFragment {
public boolean areContentsTheSame(@NonNull @NotNull Integer oldItem, @NonNull @NotNull Integer newItem) {
return oldItem.intValue() == newItem.intValue();
}
});
selectAdapter.setData(renders, defaultPos);
dialog.setAdapter(selectAdapter);
}, renders, defaultPos);
dialog.show();
}
});

@ -2,13 +2,13 @@
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true">
<shape>
<corners android:radius="@dimen/vs_50" />
<solid android:color="@color/color_FF353744" />
<corners android:radius="@dimen/vs_10" />
<solid android:color="@color/color_353744" />
</shape>
</item>
<item android:state_focused="false">
<shape>
<corners android:radius="@dimen/vs_5" />
<corners android:radius="@dimen/vs_10" />
<solid android:color="@color/color_CC353744" />
</shape>
</item>

@ -6,10 +6,10 @@
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="@dimen/vs_400"
android:layout_width="@dimen/vs_440"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/remote_dialog_bg">
android:background="@drawable/dialog_bg_01">
<TextView
android:id="@+id/title"
@ -20,7 +20,7 @@
android:padding="@dimen/vs_20"
android:singleLine="true"
android:text="11111111"
android:textColor="@color/color_FFFFFF"
android:textColor="@color/color_CC000000"
android:textSize="@dimen/ts_26"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"

@ -1,34 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/dialog_bg_01"
android:orientation="vertical"
android:padding="@dimen/vs_30">
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/downXWalkArch"
android:layout_width="match_parent"
<LinearLayout
android:layout_width="@dimen/vs_440"
android:layout_height="wrap_content"
android:focusable="false"
android:focusableInTouchMode="false"
android:gravity="center"
android:text="下载XWalkView运行组件"
android:textColor="@color/color_CC000000"
android:textSize="@dimen/ts_24" />
android:layout_gravity="center"
android:background="@drawable/dialog_bg_01"
android:orientation="vertical"
android:padding="@dimen/vs_30">
<TextView
android:id="@+id/downXWalk"
android:layout_width="@dimen/vs_300"
android:layout_height="@dimen/vs_40"
android:layout_marginTop="@dimen/vs_30"
android:background="@drawable/dialog_button_01"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="下载"
android:textColor="@color/color_FFFFFF"
android:textSize="@dimen/ts_20" />
<TextView
android:id="@+id/downXWalkArch"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:focusable="false"
android:gravity="center"
android:lineSpacingExtra="@dimen/ts_50"
android:lineSpacingMultiplier="0"
android:text="下载XWalkView运行组件"
android:textColor="@color/color_CC000000"
android:textSize="@dimen/ts_24" />
</LinearLayout>
<TextView
android:id="@+id/downXWalk"
android:layout_width="@dimen/vs_300"
android:layout_height="@dimen/vs_40"
android:layout_gravity="center"
android:layout_marginTop="@dimen/vs_30"
android:background="@drawable/dialog_button_01"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="下载"
android:textColor="@color/color_FFFFFF"
android:textSize="@dimen/ts_26" />
</LinearLayout>
</FrameLayout>

@ -6,7 +6,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/source_focus"
android:background="@drawable/dialog_button_01"
android:clickable="true"
android:focusable="true"
android:gravity="center"

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="color_058AF4">#058AF4</color>
<color name="color_6200EE">#6200EE</color>
<color name="color_3700B3">#3700B3</color>
<color name="color_03DAC5">#03DAC5</color>
@ -20,6 +19,7 @@
<color name="color_66000000">#66000000</color>
<color name="color_CC000000">#CC000000</color>
<color name="color_02F8E1">#02F8E1</color>
<color name="color_353744">#353744</color>
<color name="color_CC353744">#CC353744</color>
<color name="color_6C3D3D3D">#6c3d3d3d</color>
<color name="color_BBFFFFFF">#bbffffff</color>

@ -73,6 +73,7 @@
<dimen name="vs_360">360mm</dimen>
<dimen name="vs_390">390mm</dimen>
<dimen name="vs_400">400mm</dimen>
<dimen name="vs_440">440mm</dimen>
<dimen name="vs_410">410mm</dimen>
<dimen name="vs_470">470mm</dimen>
<dimen name="vs_480">480mm</dimen>

Loading…
Cancel
Save