@@ -1,34 +1,56 @@
package cc.winboll.studio.libaes.activitys ;
import android.app.Activity ;
import android.content.Context ;
import android.content.Intent ;
import android.content.res.Configuration ;
import android.content.res.Resources ;
import android.os.Bundle ;
import android.view.KeyEvent ;
import android.view.Menu ;
import android.view.MenuInflater ;
import android.view.View ;
import android.view.ViewGroup ;
import androidx.annotation.CallSuper ;
import androidx.annotation.ContentView ;
import androidx.annotation.IdRes ;
import androidx.annotation.LayoutRes ;
import androidx.annotation.NonNull ;
import androidx.annotation.Nullable ;
import androidx.annotation.StyleRes ;
import androidx.appcompat.app.ActionBar ;
import androidx.appcompat.app.ActionBarDrawerToggle ;
import androidx.appcompat.app.AppCompatActivity ;
import androidx.appcompat.app.AppCompatDelegate ;
import androidx.appcompat.view.ActionMode ;
import androidx.appcompat.widget.Toolbar ;
import androidx.core.app.TaskStackBuilder ;
import cc.winboll.studio.libaes.interfaces.IWinBoLLActivity ;
import cc.winboll.studio.libaes.models.AESThemeBean ;
import cc.winboll.studio.libaes.utils.AESThemeUtil ;
import cc.winboll.studio.libaes.utils.WinBoLLActivityManager ;
import cc.winboll.studio.libappbase.ToastUtils ;
/**
* @Author 豆包&ZhanGSKen<zhangsken@qq.com>
* @Date 2026/01/13 14:22
* @Describe BaseWinBollActivity
* @Describe BaseWinBollActivity 【完整透传AppCompatActivity所有公开方法】
* 继承链路: BaseWinBoLLActivity → AppCompatActivity → FragmentActivity, 所有公开能力全暴露
*/
public abstract class BaseWinBoLLActivity extends AppCompatActivity implements IWinBoLLActivity {
public static final String TAG = " BaseWinBoLLActivity " ;
protected volatile AESThemeBean . ThemeType mThemeType ;
@Override
public static final String TAG = " BaseWinBoLLActivity " ;
protected volatile AESThemeBean . ThemeType mThemeType ;
@Override
protected void onCreate ( Bundle savedInstanceState ) {
mThemeType = getThemeType ( ) ;
mThemeType = getThemeType ( ) ;
setThemeStyle ( ) ;
super . onCreate ( savedInstanceState ) ;
WinBoLLActivityManager . getInstance ( ) . add ( this ) ;
//ToastUtils.show(getTag() + ": onCreate");
//ToastUtils.show(getTag() + ": onCreate");
}
AESThemeBean . ThemeType getThemeType ( ) {
AESThemeBean . ThemeType getThemeType ( ) {
/*SharedPreferences sharedPreferences = getSharedPreferences(
SHAREDPREFERENCES_NAME, MODE_PRIVATE);
return AESThemeBean.ThemeType.values()[((sharedPreferences.getInt(DRAWER_THEME_TYPE, AESThemeBean.ThemeType.DEFAULT.ordinal())))];
@@ -36,7 +58,7 @@ public abstract class BaseWinBoLLActivity extends AppCompatActivity implements I
return AESThemeBean . getThemeStyleType ( AESThemeUtil . getThemeTypeID ( getApplicationContext ( ) ) ) ;
}
void setThemeStyle ( ) {
void setThemeStyle ( ) {
//setTheme(AESThemeBean.getThemeStyle(getThemeType()));
setTheme ( AESThemeUtil . getThemeTypeID ( getApplicationContext ( ) ) ) ;
}
@@ -55,5 +77,257 @@ public abstract class BaseWinBoLLActivity extends AppCompatActivity implements I
public Activity getActivity ( ) {
return this ;
}
// ===================== 完整暴露AppCompatActivity 所有公开方法(按类定义顺序)=====================
// @ContentView
// public BaseWinBoLLActivity(@LayoutRes int contentLayoutId) {
// super(contentLayoutId);
// }
@Override
public void addContentView ( View view , ViewGroup . LayoutParams params ) {
super . addContentView ( view , params ) ;
}
@Override
protected void attachBaseContext ( Context newBase ) {
super . attachBaseContext ( newBase ) ;
}
@Override
public void closeOptionsMenu ( ) {
super . closeOptionsMenu ( ) ;
}
@Override
public boolean dispatchKeyEvent ( KeyEvent event ) {
return super . dispatchKeyEvent ( event ) ;
}
@Override
public < T extends View > T findViewById ( @IdRes int id ) {
return super . findViewById ( id ) ;
}
@NonNull
@Override
public AppCompatDelegate getDelegate ( ) {
return super . getDelegate ( ) ;
}
@Nullable
@Override
public ActionBarDrawerToggle . Delegate getDrawerToggleDelegate ( ) {
return super . getDrawerToggleDelegate ( ) ;
}
@NonNull
@Override
public MenuInflater getMenuInflater ( ) {
return super . getMenuInflater ( ) ;
}
@Override
public Resources getResources ( ) {
return super . getResources ( ) ;
}
@Nullable
@Override
public ActionBar getSupportActionBar ( ) {
return super . getSupportActionBar ( ) ;
}
@Nullable
@Override
public Intent getSupportParentActivityIntent ( ) {
return super . getSupportParentActivityIntent ( ) ;
}
@Override
public void invalidateOptionsMenu ( ) {
super . invalidateOptionsMenu ( ) ;
}
@Override
public void onConfigurationChanged ( @NonNull Configuration newMetrics ) {
super . onConfigurationChanged ( newMetrics ) ;
}
@Override
public void onContentChanged ( ) {
super . onContentChanged ( ) ;
}
@Override
public void onCreateSupportNavigateUpTaskStack ( @NonNull TaskStackBuilder builder ) {
super . onCreateSupportNavigateUpTaskStack ( builder ) ;
}
@Override
public boolean onKeyDown ( int keyCode , KeyEvent event ) {
return super . onKeyDown ( keyCode , event ) ;
}
//
// @Override
// public final boolean onMenuItemSelected(int featureId, @NonNull MenuItem item) {
// return super.onMenuItemSelected(featureId, item);
// }
@Override
public boolean onMenuOpened ( int featureId , Menu menu ) {
return super . onMenuOpened ( featureId , menu ) ;
}
@Override
protected void onNightModeChanged ( int mode ) {
super . onNightModeChanged ( mode ) ;
}
@Override
public void onPanelClosed ( int featureId , @NonNull Menu menu ) {
super . onPanelClosed ( featureId , menu ) ;
}
@Override
protected void onPostCreate ( @Nullable Bundle savedInstanceState ) {
super . onPostCreate ( savedInstanceState ) ;
}
@Override
protected void onPostResume ( ) {
super . onPostResume ( ) ;
}
@Override
public void onPrepareSupportNavigateUpTaskStack ( @NonNull TaskStackBuilder builder ) {
super . onPrepareSupportNavigateUpTaskStack ( builder ) ;
}
@Override
protected void onStart ( ) {
super . onStart ( ) ;
}
@Override
protected void onStop ( ) {
super . onStop ( ) ;
}
@CallSuper
@Override
public void onSupportActionModeFinished ( @NonNull ActionMode mode ) {
super . onSupportActionModeFinished ( mode ) ;
}
@CallSuper
@Override
public void onSupportActionModeStarted ( @NonNull ActionMode mode ) {
super . onSupportActionModeStarted ( mode ) ;
}
@Override
@Deprecated
public void onSupportContentChanged ( ) {
super . onSupportContentChanged ( ) ;
}
@Override
public boolean onSupportNavigateUp ( ) {
return super . onSupportNavigateUp ( ) ;
}
@Override
protected void onTitleChanged ( CharSequence title , int color ) {
super . onTitleChanged ( title , color ) ;
}
@Nullable
@Override
public ActionMode onWindowStartingSupportActionMode ( @NonNull ActionMode . Callback callback ) {
return super . onWindowStartingSupportActionMode ( callback ) ;
}
@Override
public void openOptionsMenu ( ) {
super . openOptionsMenu ( ) ;
}
@Override
public void setContentView ( @LayoutRes int layoutResID ) {
super . setContentView ( layoutResID ) ;
}
@Override
public void setContentView ( View view ) {
super . setContentView ( view ) ;
}
@Override
public void setContentView ( View view , ViewGroup . LayoutParams params ) {
super . setContentView ( view , params ) ;
}
@Override
public void setSupportActionBar ( @Nullable Toolbar toolbar ) {
super . setSupportActionBar ( toolbar ) ;
}
@Override
@Deprecated
public void setSupportProgress ( int progress ) {
super . setSupportProgress ( progress ) ;
}
@Override
@Deprecated
public void setSupportProgressBarIndeterminate ( boolean indeterminate ) {
super . setSupportProgressBarIndeterminate ( indeterminate ) ;
}
@Override
@Deprecated
public void setSupportProgressBarIndeterminateVisibility ( boolean visible ) {
super . setSupportProgressBarIndeterminateVisibility ( visible ) ;
}
@Override
@Deprecated
public void setSupportProgressBarVisibility ( boolean visible ) {
super . setSupportProgressBarVisibility ( visible ) ;
}
@Override
public void setTheme ( @StyleRes int resId ) {
super . setTheme ( resId ) ;
}
@Nullable
@Override
public ActionMode startSupportActionMode ( @NonNull ActionMode . Callback callback ) {
super . startSupportActionMode ( callback ) ;
return null ;
}
@Override
public void supportInvalidateOptionsMenu ( ) {
super . supportInvalidateOptionsMenu ( ) ;
}
@Override
public void supportNavigateUpTo ( @NonNull Intent upIntent ) {
super . supportNavigateUpTo ( upIntent ) ;
}
@Override
public boolean supportRequestWindowFeature ( int featureId ) {
return super . supportRequestWindowFeature ( featureId ) ;
}
@Override
public boolean supportShouldUpRecreateTask ( @NonNull Intent targetIntent ) {
return super . supportShouldUpRecreateTask ( targetIntent ) ;
}
}