diff --git a/app/src/main/java/org/exthmui/game/qs/AutoBrightnessTile.java b/app/src/main/java/org/exthmui/game/qs/AutoBrightnessTile.java
index 0352de6..91a7839 100644
--- a/app/src/main/java/org/exthmui/game/qs/AutoBrightnessTile.java
+++ b/app/src/main/java/org/exthmui/game/qs/AutoBrightnessTile.java
@@ -23,7 +23,7 @@
 
 public class AutoBrightnessTile extends TileBase {
     public AutoBrightnessTile(Context context) {
-        super(context, "自动亮度", Constants.GamingActionTargets.DISABLE_AUTO_BRIGHTNESS, R.drawable.ic_qs_auto_brightness);
+        super(context, context.getString(R.string.qs_auto_brightness), Constants.GamingActionTargets.DISABLE_AUTO_BRIGHTNESS, R.drawable.ic_qs_auto_brightness);
         setNeedInverse(true);
     }
 }
diff --git a/app/src/main/java/org/exthmui/game/qs/DNDTile.java b/app/src/main/java/org/exthmui/game/qs/DNDTile.java
index 592bb33..6cf3597 100644
--- a/app/src/main/java/org/exthmui/game/qs/DNDTile.java
+++ b/app/src/main/java/org/exthmui/game/qs/DNDTile.java
@@ -28,6 +28,6 @@
 
 public class DNDTile extends TileBase {
     public DNDTile(Context context) {
-        super(context, "勿扰模式", Constants.GamingActionTargets.DISABLE_RINGTONE, R.drawable.ic_qs_dnd);
+        super(context, context.getString(R.string.qs_dnd), Constants.GamingActionTargets.DISABLE_RINGTONE, R.drawable.ic_qs_dnd);
     }
 }
diff --git a/app/src/main/java/org/exthmui/game/qs/DanmakuTile.java b/app/src/main/java/org/exthmui/game/qs/DanmakuTile.java
index 1edc731..3822f24 100644
--- a/app/src/main/java/org/exthmui/game/qs/DanmakuTile.java
+++ b/app/src/main/java/org/exthmui/game/qs/DanmakuTile.java
@@ -23,6 +23,6 @@
 
 public class DanmakuTile extends TileBase {
     public DanmakuTile(Context context) {
-        super(context, "通知弹幕", Constants.GamingActionTargets.SHOW_DANMAKU, R.drawable.ic_qs_danmaku);
+        super(context, context.getString(R.string.qs_danmaku), Constants.GamingActionTargets.SHOW_DANMAKU, R.drawable.ic_qs_danmaku);
     }
 }
diff --git a/app/src/main/java/org/exthmui/game/qs/LockGestureTile.java b/app/src/main/java/org/exthmui/game/qs/LockGestureTile.java
index 7c005f5..7cccda7 100644
--- a/app/src/main/java/org/exthmui/game/qs/LockGestureTile.java
+++ b/app/src/main/java/org/exthmui/game/qs/LockGestureTile.java
@@ -23,6 +23,6 @@
 
 public class LockGestureTile extends TileBase {
     public LockGestureTile(Context context) {
-        super(context, "屏蔽手势", Constants.GamingActionTargets.DISABLE_GESTURE, R.drawable.ic_qs_disable_gesture);
+        super(context, context.getString(R.string.qs_lock_gesture), Constants.GamingActionTargets.DISABLE_GESTURE, R.drawable.ic_qs_disable_gesture);
     }
 }
diff --git a/app/src/main/java/org/exthmui/game/qs/LockHwKeysTile.java b/app/src/main/java/org/exthmui/game/qs/LockHwKeysTile.java
index e531e66..6649104 100644
--- a/app/src/main/java/org/exthmui/game/qs/LockHwKeysTile.java
+++ b/app/src/main/java/org/exthmui/game/qs/LockHwKeysTile.java
@@ -23,6 +23,6 @@
 
 public class LockHwKeysTile extends TileBase {
     public LockHwKeysTile(Context context) {
-        super(context, "屏蔽按键", Constants.GamingActionTargets.DISABLE_HW_KEYS, R.drawable.ic_qs_disable_hw_key);
+        super(context, context.getString(R.string.qs_lock_hw_keys), Constants.GamingActionTargets.DISABLE_HW_KEYS, R.drawable.ic_qs_disable_hw_key);
     }
 }
diff --git a/app/src/main/java/org/exthmui/game/qs/ScreenCaptureTile.java b/app/src/main/java/org/exthmui/game/qs/ScreenCaptureTile.java
index 68d878b..72bd459 100644
--- a/app/src/main/java/org/exthmui/game/qs/ScreenCaptureTile.java
+++ b/app/src/main/java/org/exthmui/game/qs/ScreenCaptureTile.java
@@ -38,7 +38,7 @@
     private Handler mHandler = new Handler();
 
     public ScreenCaptureTile(Context context) {
-        super(context, "屏幕截图", "", R.drawable.ic_qs_screenshot);
+        super(context, context.getString(R.string.qs_screen_capture), "", R.drawable.ic_qs_screenshot);
         qsIcon.setSelected(true);
     }
 
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 557bbb1..5308a32 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -18,4 +18,10 @@
     <string name="performance_title">性能配置</string>
     <string name="performance_text_for_powersave">更长续航</string>
     <string name="performance_text_for_performance">最高性能</string>
+    <string name="qs_auto_brightness">自动亮度</string>
+    <string name="qs_danmaku">通知弹幕</string>
+    <string name="qs_dnd">勿扰模式</string>
+    <string name="qs_lock_gesture">屏蔽手势</string>
+    <string name="qs_lock_hw_keys">屏蔽按键</string>
+    <string name="qs_screen_capture">屏幕截图</string>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index b1961bc..f57a46c 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -17,4 +17,11 @@
     <string name="performance_title">Performance</string>
     <string name="performance_text_for_powersave">Powersave</string>
     <string name="performance_text_for_performance">Performance</string>
+
+    <string name="qs_auto_brightness">Auto brightness</string>
+    <string name="qs_danmaku">Danmaku</string>
+    <string name="qs_dnd">Do not disturb</string>
+    <string name="qs_lock_gesture">Lock gesture</string>
+    <string name="qs_lock_hw_keys">Lock hardware keys</string>
+    <string name="qs_screen_capture">Screen capture</string>
 </resources>
\ No newline at end of file
