Creating a custom theme for Xiaomi Redmi 7: from idea to installation

Xiaomi Redmi 7 is still a popular budget smartphone with flexible customization capabilities, despite the release of new models. MIUI It's user-friendly -- but what if none of the thousands of themes are good? Create your own! This article will help you figure out how to design a unique theme for Redmi 7 from scratch, even if you've never designed one.

We will cover the whole process: from preparing tools and understanding the structure of topics. MIUI Before testing and installing the finished product, we will pay special attention to the nuances relevant to Redmi. 7 (for example, restrictions MIUI 10-12, You'll learn what elements you can change, how to avoid common theme packaging errors, and where to get free design resources. And if you do not want to go into technical details – at the end of the article there is a list of ready-made templates that can be adapted to your needs for the first time. 10 minute.

What to Know Before Starting: How Themes Are Structured MIUI

Topics in MIUI β€” It's not just wallpaper and icons, it's a rigidly structured archive, where each file is responsible for a specific interface element, from fonts and animations to notification sounds. 7 (particularly MIUI 10-11) limitations:

  • πŸ“± Screen resolution: The theme should be optimized for 720Γ—1520 (or 1080Γ—2340, If you're scaling, otherwise, the elements will be blurred or cropped.
  • πŸ”§ Version. MIUI: topic MIUI 12+ It may not work on the Redmi 7S. MIUI 10 Due to Changes in File Structure.
  • 🎨 Supported elements: not all components can be changed, such as charging animations or Control Center style edited only in newer versions MIUI.

The theme file has the.mtz extension and consists of:

  • πŸ“ description.xml β€” metadata (title, author, version) MIUI).
  • πŸ“ preview – screenshots for preview in the theme store.
  • πŸ“ icon - application icons.
  • πŸ“ wallpaper – wallpaper for desktop and lock.
  • πŸ“ fonts (optional fonts).
  • πŸ“ style – colors and styles of interface elements.

⚠️ Attention: Redmi 7s MIUI 10 you can't change the status bar through the theme, which is a limitation of the system. If you critically change the appearance of the system, you'll need to unlock the bootloader and install custom firmware.

πŸ“Š Which topic you want to change first?
Application icons
Wallpaper and screensavers
Colors and fonts of the interface
Notification sounds
Animation.

Tools Preparation: What You Need to Create a Theme

You don't need professional design skills to create a theme from scratch, but you need a basic set of tools.

Tool.AppointmentWhere to download
MIUI Theme EditorThe official theme editor from Xiaomi (simplified version) is suitable for beginners.Official Topics Site
ApktoolFor decompilation and editing APK-Theme files (advanced level).GitHub Apktool
GIMP/PhotoshopEditing icons, wallpaper and other graphic elements.Official websites or GIMP
Notepad++/VS CodeEditing XML-files, for example, description.xml).Notepad++
MT ManagerFile Manager with root rights for manual installation of themes.4PDA or XDA Developers

If you are a beginner, start with MIUI Theme Editor allows you to create themes through drag-and-drop without going into code. Apktool is better for advanced users, as it gives you complete control over the structure of the theme.

Also prepare:

  • πŸ–ΌοΈ Sources of graphics: icons in format PNG (recommended size β€” 192Γ—192 px), wallpaper in resolution 720Γ—1520 px.
  • 🎨 Color palette: choose the main and accent colors for the interface (you can use Coolors).
  • πŸ“± Test device: Redmi 7 with unlocked bootloader (if you plan to test the theme before publication).

πŸ’‘

If you don’t know how to draw icons, take ready-made sets from sites like Flaticon or Icons8. The main thing is to make sure that the license allows you to use graphics in personal projects.

Step. 1: Creating the theme structure and editing description.xml

Every topic starts with a file. description.xml β€” It's its passport, which tells the system which interface elements will be changed. 7 Critically state the correct version MIUI, otherwise the subject will not be settled.

Example of minimum description.xml for MIUI 10-11:

<?xml version="1.0" encoding="utf-8"?>


<theme>




<name>MyRedmi7Theme</name>




<author>YourName</author>




<version>1.0</version>




<applyVersion>




<item>10</item> <!-- MIUI 10 -->




<item>11</item> <!-- MIUI 11 -->




</applyVersion>




<compatibility>




<device model="onc" /> <!-- Redmi 7 model code -->




</compatibility>




</theme>

Pay attention to the tag. <compatibility> β€” Here's the Redmi code. 7 (If you don't add it, the theme may not appear in the list of available. The full list of Xiaomi model codes can be found here.

The structure of the theme folders should look like this:

MyRedmi7Theme/


β”œβ”€β”€ description.xml




β”œβ”€β”€ preview/




β”‚   β”œβ”€β”€ preview_1.jpg




β”‚   └── preview_2.jpg




β”œβ”€β”€ icon/




β”‚   β”œβ”€β”€ com.android.contacts.png




β”‚   └── com.android.settings.png




β”œβ”€β”€ wallpaper/




β”‚   β”œβ”€β”€ lockscreen.jpg




β”‚   └── homescreen.jpg




└── style/




β”œβ”€β”€ colors.xml




└── styles.xml

Indicate the title of the topic|Check the version. MIUI|Add the Redmi 7 model code (onc)|Create folders for icons and wallpaper|Add preview screenshots-->

Step 2: Icon and wallpaper design – nuances for Redmi 7

Icons and wallpaper are the things that the user will see first.There are a few features on Redmi 7 that you need to consider:

  • πŸ“ Size of icons: optimal β€” 192Γ—192 If you do more, the system automatically scales them, which can degrade the quality.
  • 🎨 Background icons: MIUI 10-11 The default icons are white. If you want transparent icons, add them to the background. styles.xml parameter icon_mask="false".
  • πŸ–ΌοΈ Wallpaper: Use permission for the desktop 720Γ—1520 px, for lock screen β€” 720Γ—1280 px (as part of the screen is occupied by the status bar).
  • πŸ” Adaptability: Check the icons on dark and light themes, and some colors can get lost in the dark background.

If you don't want to draw icons from scratch, you can use pre-made kits and customize them to suit your needs, like IconPacks, which has free packs that you can download and repack to.mtz.

⚠️ Attention: Redmi 7s MIUI 10 You can't change your system application icons (like Settings or Phone) without root rights. If you want to replace them, you'll have to use Xposed Framework or custom firmware.

Critical point: if you use icons with a transparent background, be sure to check their display in the application folders. MIUI 10-11 Sometimes there is a bug where transparency is ignored and icons are displayed on a white square.

How to check the compatibility of icons?
Create a test folder on your desktop and put a few apps with your icons in it. Then switch between light and dark theme (in Settings). β†’ Screen. β†’ If the icons look correct in both modes, you can continue.

Step 3: Editing interface styles and colors

The style folder stores the files that control the colors and fonts of the interface. For Redmi 7, the most important ones are:

  • 🎨 colors.xml β€” Color of elements (buttons, text, background notifications).
  • πŸ“ styles.xml β€” type-style.
  • πŸ”€ font.ttf - custom font (optional).

Example colors.xml dark-themed:

<resources>


<color name="miui_color_primary">#FFBB86FC</color> <!-- Primary color -->




<color name="miui_color_primary_dark">#FF3700B3</color>




<color name="miui_color_background">#FF121212</color> <!--Fon -->




<color name="miui_color_on_background">#FFFFFFFF</color> <!-- Text against the background -->




</resources>

To change the default font, place the.ttf file in the font folder and specify it in the font. description.xml:

<font>


<item name="regular">font/YourFont-Regular.ttf</item>




<item name="bold">font/YourFont-Bold.ttf</item>




</font>

On Redmi 7s. MIUI 10 not all fonts are supported correctly. For example, Cyrillic characters can be displayed in squares if the font does not contain the corresponding glyphs. Before the final assembly of the topic, check the display of Russian text in the text:

  • πŸ“± Annex names.
  • πŸ“ Notifications.
  • πŸ” Search line.

πŸ’‘

If you change the font, be sure to test it in Cyrillic, and many free fonts do not support the Russian alphabet, which will lead to problems with the text display.

Step 4: Packing the theme in.mtz format and installing it on Redmi 7

When all files are ready, they must be stored in the.mtz archive.

  1. Download. MIUI Theme Editor or use it 7-Zip hand-packed.
  2. Place all files in one folder (as in the example structure above).
  3. Select the folder, right-click and select 7-Zip β†’ Add to the archive.
  4. In the archiving settings, select the format ZIP, Compression method - Store (without compression!).
  5. Rename the archive extension from.zip to.mtz.

Now you can install the theme on Redmi 7. There are three ways to do this.

MethodInstructionsNeed root?
Through the Topics appPut the.mtz file in the folder MIUI/theme Then open the themes. β†’ My subjects. β†’ Imports.No.
Through MT ManagerCopy the file into /data/system/theme/ (Root rights are required).Yes.
Through ADBConnect your phone to your PC and execute the command: adb push MyTheme.mtz /sdcard/MIUI/theme/No.

If the topic does not appear in the list, check:

  • πŸ“ Correctness description.xml (tagged <applyVersion> and <compatibility>).
  • πŸ“ Folder structure (all files must be in the correct directories).
  • πŸ”„ Restart the phone after installation.

πŸ’‘

If the theme does not apply, try clearing the theme app cache (Settings) β†’ Annexes β†’ Application management β†’ Topics β†’ Clear the cache).

Solving common mistakes when creating themes

Even if you follow the instructions, you may have problems installing a theme on Redmi 7, and here are the most common ones and how to fix them:

Mistake.Reason.Decision
The topic does not appear on the listWrong version MIUI into description.xml or lack of model code.Check the tags. <applyVersion> and <compatibility>. For Redmi. 7 The onc code must be specified.
Icons don't change.Lack of rights or icons do not match the name of the application package.Check the file names in the icon folder (should match packets, such as com.android.contacts.png).
Wallpaper stretched or trimmedIncorrect image resolution.Use the wallpaper. 720Γ—1520 px for the desktop and 720Γ—1280 lock-in.
Theme applies, but interface elements do not changeThere are no files in the style folder or they are incorrect.Check it out. colors.xml and styles.xml error-proof.
When using the theme, the phone is rebootedConflict with system files or corrupted.mtz.Pack the theme without compression (the method Store in the 7-Zip).

If none of these methods worked, try:

  1. Set the topic through TWRP (If you have custom recovery).
  2. Update MIUI Up to the latest available version for Redmi 7.
  3. Clear the Application Topics (Settings) β†’ Annexes β†’ Topics β†’ Warehouse β†’ Clear the data).

⚠️ Warning: If the phone starts to brake or overheat after applying the theme, it is likely that the problem is too heavy graphic elements (for example, high-resolution animations.

Prepared templates and resources to speed up work

If you don't want to create a theme from scratch, you can use the templates and adapt them to your own needs. Here are some useful resources:

  • πŸ“₯ Xiaomi official templates: themes.xiaomi.com (Developers section).
  • 🎨 Free icons: Flaticon, Icons8.
  • πŸ–ΌοΈ Wallpaper: Wallhaven, Unsplash (select images with at least a resolution) 1080Γ—2340 px).
  • πŸ› οΈ Topics editors: MIUI Theme Editor, XDA Developers (Theming section).

If you want to quickly adapt the finished theme, download any.mtz file from the theme store, rename it to.zip, unpack and edit the desired items (icons, colors, etc.), then pack back.

Example of rapid adaptation:

  1. Download your favorite theme from the Topic App.
  2. Remove.mtz as ZIP-archive.
  3. Replace the wallpaper in your wallpaper with your images.
  4. Edit it. colors.xml, color-shift.
  5. Pack it back to.mtz and install it.

πŸ’‘

Adapting a finished theme is the fastest way to get a unique design without deep knowledge. 2-3 element (wallpaper, icons, colors), and the theme will look new.

FAQ: Frequent questions about creating themes for Redmi 7

Can I create a theme without root rights?
Yes, root rights are only needed to install themes manually through MT Manager or changes to system icons. No need to install them through the root Themes app for standard installation.
Why does my theme work on Redmi Note 7 but not Redmi 7?
Probably in description.xml No Redmi code is specified. 7 (c) Add a line <device model="onc" /> tagged <compatibility>.
How to find out the code of the application package to replace the icon?
Install the App Inspector app, open the app you want, and copy the Package Name field. The icon file name must match that code (e.g., com.whatsapp.png).
Can I sell my themes?
Yes, but only through the official theme store. MIUI. You need to register as a developer on themes.xiaomi.com and moderate.Self-selling through third-party sites is prohibited by Xiaomi regulations.
How to return a standard theme if the custom theme is not working properly?
Go to Settings. β†’ Topics β†’ My Themes, select Standard and apply it. If the interface is "silent," clear the Topic application data or reset the settings through Settings. β†’ System system β†’ Resetting settings β†’ Resetting theme settings.