添加设置菜单

This commit is contained in:
sifacaii 2022-09-02 19:34:40 +08:00
parent b53d813074
commit 54eb89e4f5
4 changed files with 30 additions and 4 deletions

View File

@ -67,6 +67,7 @@ public class BaseActivity extends AppCompatActivity implements CustomAdapt {
public void onClick(View view) {
settingMenu.show();
Menu setmenu = settingMenu.getMenu();
setmenu.findItem(R.id.actionBar_option_PlayStartInBegin).setChecked(JfClient.config.isPlayStartInBegin());
setmenu.findItem(R.id.actionBar_option_HAACC).setChecked(JfClient.config.isHAACC());
setmenu.findItem(R.id.actionBar_option_FORCE_HAACC).setChecked(JfClient.config.isFORCE_HAACC());
}
@ -81,6 +82,8 @@ public class BaseActivity extends AppCompatActivity implements CustomAdapt {
JfClient.config.setHAACC(!JfClient.config.isHAACC());
}else if(menuItem.getItemId() == R.id.actionBar_option_FORCE_HAACC){
JfClient.config.setFORCE_HAACC(!JfClient.config.isFORCE_HAACC());
}else if(menuItem.getItemId() == R.id.actionBar_option_PlayStartInBegin){
JfClient.config.setPlayStartInBegin(!JfClient.config.isPlayStartInBegin());
}
return true;
}

View File

@ -10,9 +10,19 @@ public class Config {
private String PassWord = "";
private String SortBy = "DateCreated";
private String SortOrder = "Descending";
private boolean PlayStartInBegin; //是否从头开始播放 接上次播放进度
private boolean HAACC; //硬解
private boolean FORCE_HAACC; //强制硬解
public boolean isPlayStartInBegin() {
return PlayStartInBegin;
}
public void setPlayStartInBegin(boolean playStartInBegin) {
PlayStartInBegin = playStartInBegin;
saveConfigToSP("PlayStartInBegin",playStartInBegin);
}
public Config(Context context) {
this.context = context;
getConfigFromSP();
@ -93,6 +103,7 @@ public class Config {
this.SortOrder = sp.getString("sortorder","Descending");
this.HAACC = sp.getBoolean("HAACC",true);
this.FORCE_HAACC = sp.getBoolean("FORCE_HAACC",false);
this.PlayStartInBegin = sp.getBoolean("PlayStartInBegin",true);
}
/**

View File

@ -417,7 +417,10 @@ public class VlcPlayerActivity extends BaseActivity implements MediaPlayer.Event
Media media = new Media(libVLC,uri);
media.setHWDecoderEnabled(JfClient.config.isHAACC(),JfClient.config.isFORCE_HAACC());
//media.addOption(":codec=mediacodec_ndk,mediacodec_jni,none"); //硬件加速
//media.addOption(":start-time=${start/1000L}"); //设置开始位置
if(!JfClient.config.isPlayStartInBegin()){
long startTime = currItem.startPositionTicks / 10000L / 1000L;
if( startTime > 60) media.addOption(":start-time=" + startTime); //设置开始位置
}
return media;
}

View File

@ -1,21 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/actionBar_option_HAACC"
android:orderInCategory="0"
android:title="设置选项:" />
<item
android:id="@+id/actionBar_option_PlayStartInBegin"
android:orderInCategory="6"
android:checkable="true"
android:title="从头开始播放" />
<item
android:id="@+id/actionBar_option_HAACC"
android:orderInCategory="7"
android:checkable="true"
android:title="硬解解码" />
<item
android:id="@+id/actionBar_option_FORCE_HAACC"
android:orderInCategory="1"
android:orderInCategory="8"
android:checkable="true"
android:title="强制硬解解码" />
<item
android:id="@+id/activeBar_option_logout"
android:orderInCategory="9"
android:checkable="true"
android:title="注销" />
</menu>