APP明暗主题设置

1.preference.xml 增加一个暗色主题 SwitchPreference

2.每个 Activity 的 setContentView 前面增加 setTheme

SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
if (sharedPreferences.getBoolean("switch_dark_theme", false)) {
     setTheme(android.R.style.Theme_Holo);
}
setContentView(R.layout.activity_home);

3.关闭暗色主题

4.开启暗色主题

5.已知问题

因为 Activity 要重启才能生效,主页没有重启不能立即生效,需要重启APP。

PreferenceActivity 设置暗色主题后,文字变白,背景仍然是白色,看不清。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在MATLAB App Designer中,可以使用`uifigure`和`uitabgroup`来创建容器和选项卡组。焦点设置可以通过以下步骤实现: 1. 创建一个App Designer应用程序,并在设计视图中添加一个`uifigure`组件作为主容器。 2. 在`uifigure`组件中添加一个`uitabgroup`组件作为选项卡容器。 3. 在`uitabgroup`组件中添加多个`uitab`组件作为选项卡。 4. 在每个`uitab`组件中添加其他UI组件,例如按钮、文本框等。 5. 使用`TabChangedFcn`回调函数来响应选项卡切换事件,以便在切换选项卡时执行相应的操作。 以下是一个示例代码,演示了如何在MATLAB App Designer中设置焦点: ```matlab classdef MyApp < matlab.apps.AppBase % Properties properties (Access = private) UIFigure matlab.ui.Figure UITabGroup matlab.ui.container.TabGroup Tab1 matlab.ui.container.Tab Tab2 matlab.ui.container.Tab Button1 matlab.ui.control.Button Button2 matlab.ui.control.Button end % Callbacks methods (Access = private) % Callback function for TabChanged event function onTabChanged(app, ~) currentTab = app.UITabGroup.SelectedTab; if currentTab == app.Tab1 % Set focus to Button1 uifocus(app.Button1); elseif currentTab == app.Tab2 % Set focus to Button2 uifocus(app.Button2); end end end % App initialization and construction methods (Access = private) % Create UIFigure and components function createComponents(app) % Create UIFigure app.UIFigure = uifigure; % Create UITabGroup app.UITabGroup = uitabgroup(app.UIFigure); app.UITabGroup.TabChangedFcn = createCallbackFcn(app, @onTabChanged, true); % Create Tab1 app.Tab1 = uitab(app.UITabGroup, 'Title', 'Tab 1'); % Create Button1 in Tab1 app.Button1 = uibutton(app.Tab1, 'Text', 'Button 1'); % Create Tab2 app.Tab2 = uitab(app.UITabGroup, 'Title', 'Tab 2'); % Button2 in Tab2 app.Button2 = uibutton(app.Tab2, 'Text', 'Button 2'); end end % App startup and run methods (Access = private) % Start the app function run(app) % Create the components createComponents(app); % Show the figure app.UIFigure.Visible = 'on'; end end % App lifecycle management methods (Access = public) % Construct app function app = MyApp % Call the run method run(app); end % Close app function delete(app) % Delete UIFigure when app is closed delete(app.UIFigure); end end end ``` 请注意,上述代码是一个完整的MATLAB App Designer应用程序示例,包含了一个`uifigure`组件、一个`uitabgroup`组件和两个选项卡。每个选项卡中都有一个按钮。在切换选项卡时,焦点会自动设置到相应的按钮上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值