همیار اندروید
همیار اندروید
همیار اندروید
نه
بله
منوی وبسایت
حساب کاربری

همیار اندروید

مرجــع تخصـصــی توسـعــه انــدرویــد

منوی وبسایت
حساب کاربری

آموزش تغییر فونت کل برنامه به کمک استایل Style در اندروید استودیو

آموزش تغییر فونت کل برنامه به کمک استایل Style در اندروید استودیو
نوع هزینه
شرکت کنندگان
دریافت دسترسی
مشخصات این آموزش
موضوعات مرتبط
زبان برنامه‌نویسی
XML
نوع قسمت‌ها
محتوای ارائه شده
متن   ,   تصویر
مهارت های مورد نیاز
وضعیت انتشار
سطح آموزش
آخرین آپدیت
یادگیری این آموزش

به نام خدا

سلام دوستان همیشه همراه همیار اندروید

در این مبحث آموزشی قرار هستش بهتون یاد بدم

که چطور فونت همه برنامه رو یکجا عوض کنیم

یعنی اینکه همه ویوها با هم فونتشون عوض بشه ، با هر نوشته ای که داخل برنامه ما وجود داره

این تغییر فونت رو به کمک استایل ها انجام میدیم

 

 

قدم اول

در اولین مرحله ما باید فونتی که مد نظرمون هست رو به برنامه اضافه کنیم

و طریقه اضافه کردن فونت به برنامه رو قبلا بهتون آموزش دادیم که شما 

میتونید از اینجا این آموزش رو ببینید 

 

 

قدم دوم

من میام دوتا ویو به لایوت اضافه می کنم یک TextView و یک Button

که درون آن ها متنی فارسی می نویسم

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:gravity="center"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="HamyarAndroid.com"
        android:textSize="30sp"
        android:textColor="#4BB84F"/>

    <TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="همیار اندروید همیار همیشگی شما"
    android:textSize="50sp"
    android:layout_marginTop="30sp"/>

    <Button
        android:id="@+id/bt1"
        android:layout_width="200dp"
        android:layout_height="100dp"
        android:text="متن نمونه"
        android:textSize="40sp"
        android:layout_marginTop="20dp"/>

    
</LinearLayout>

 

 

قدم سوم

در این مرحله من از مسیر res ---> values ---> styles   وارد قسمت styles.xml می شوم

که کار اصلی ما اینجا هستش

به استایل AppTheme یک خصوصیت جدید اضافه میکنم یعنی یک آیتم جدید

آیتمی به نام fontFamily

و مقدار اون رو برابر با فونت مورد نظر خودمون قرار میدیم

فونتی که قبلا به پروژه اضافه کرده بودیم

styles.xm

<resources>

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>

        <item name="fontFamily">@font/arshia</item>

    </style>

</resources>

استایل AppTheme  که در بالا میبینید همه اپلیکیشن ما از این استایل پیروی می کند

درواقع یک تم برای کل اپلیکیشن ما هستش

خب طبیعیه که هر تغییری درون این استایل بدیم روی کل اپ تاثیر میزاره

و تمام .

 

 

نتیجه تغییر فونت تمام اپ

خب حالا من یک اجرا از اپ می گیرم

و تصویرش رو میتونید در پایین ببینید

 

 

سوال ؟

خب همانطور که در بالا میبینید ، فونت همه ویوها تغییر کرد

اما یک سوال

یه نفر میگه خب من فونت همه برنامه رو تغییر دادم

ولی نمیخام فونت یک ویو خاص تغییر کنه 

 

 

راه حل سوال

در قدم اول یک فونت دیگه به برنامه اضافه می کنم

و درون styles.xml یک style جدید میسازیم

و فونت جدید رو بهش اضافه می کنم مانند کدهای پایین

که من استایل fontButton رو ایجاد کردم و فونت جدید رو به اون دادم (خط 16)

styles.xm

<resources>


    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        
        <item name="fontFamily">@font/arshia</item>

    </style>



    <style name="fontButton">
        <item name="fontFamily">@font/iran_nastaliq</item>
    </style>


</resources>

خب حالا من میام این استایل جدیدی که ساختم رو برای باتن ست میکنم (خط 27)

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:gravity="center"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="HamyarAndroid.com"
        android:textSize="30sp"
        android:textColor="#4BB84F"/>

    <TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="همیار اندروید همیار همیشگی شما"
    android:textSize="50sp"
    android:layout_marginTop="30sp"/>

    <Button
        style="@style/fontButton"
        android:id="@+id/bt1"
        android:layout_width="200dp"
        android:layout_height="100dp"
        android:text="متن نمونه"
        android:textSize="40sp"
        android:layout_marginTop="30dp"/>


</LinearLayout>

تصویر زیر هم خروجی نهایی ما هستش

 

 

سخن آخر

امیدوارم که از این آموزش استفاده لازم و موثر رو ببرید

تا آموزش بعدی در پناه خدا

HRoid.ir/t183
لینک کوتاه این آموزش برای انتشار در شبکه های اجتماعی
نظرات این آموزش
ابتدا باید وارد حساب کاربری خود شوید ، تا بتوانید برای این آموزش نظری ارسال کنید
هنوز نظری برای این آموزش ثبت نشده است
کپی برداری از محتوا و دیگر منابع اختصاصی به هر نحو غیر مجاز است. حتی با ذکر منبع. در صورت تخلف پیگرد قانونی به همراه خواهد داشت.
Copyright © 2020 , www.HamyarRoid.com , www.HamyarAndroid.com , Terms , Sitemap
خلـــق هـمیـار انـدرویــد با
logo-samandehi