forked from extern/Unexpected-Keyboard
Automatic day night theme in settings activity
There seems to be no "DayNight" theme compatible with older version of android outside of the androidx library. Using 'Theme.DeviceDefault' which is a dark theme, even if it doesn't sounds like. Detect if a light theme should be used at activity creation.
This commit is contained in:
parent
7edfd81db1
commit
d2328d4b9a
@ -8,7 +8,7 @@
|
||||
</intent-filter>
|
||||
<meta-data android:name="android.view.im" android:resource="@xml/method"/>
|
||||
</service>
|
||||
<activity android:name="juloo.keyboard2.SettingsActivity" android:icon="@drawable/ic_launcher" android:label="@string/settings_activity_label" android:theme="@style/android:Theme.Material">
|
||||
<activity android:name="juloo.keyboard2.SettingsActivity" android:icon="@drawable/ic_launcher" android:label="@string/settings_activity_label" android:theme="@style/android:Theme.DeviceDefault">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
</intent-filter>
|
||||
|
@ -1,5 +1,7 @@
|
||||
package juloo.keyboard2;
|
||||
|
||||
import android.content.res.Configuration;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.preference.PreferenceActivity;
|
||||
|
||||
@ -8,7 +10,20 @@ public class SettingsActivity extends PreferenceActivity
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState)
|
||||
{
|
||||
detectSystemTheme();
|
||||
super.onCreate(savedInstanceState);
|
||||
addPreferencesFromResource(R.xml.settings);
|
||||
}
|
||||
|
||||
/** The default theme is [Theme.DeviceDefault], which is dark. Detect if the
|
||||
system is using light theme. */
|
||||
void detectSystemTheme()
|
||||
{
|
||||
if (Build.VERSION.SDK_INT >= 14)
|
||||
{
|
||||
int ui_mode = getResources().getConfiguration().uiMode;
|
||||
if ((ui_mode & Configuration.UI_MODE_NIGHT_NO) != 0)
|
||||
setTheme(android.R.style.Theme_DeviceDefault_Light);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user