PDA

View Full Version : آموزش ساخ برنامه چند زبانه



pcpsoft
یک شنبه 12 بهمن 1393, 12:39 عصر
ببخشید عجله ای شد چیزی رو توضیح ندادم سوالی داشتید بپرسید

سلام شاید براتون پیش اومده باشه که بخواید یه برنامه بنویسید که از چندین زبان مختلف پشتیبانی کنه برای این کار بصورت زیر عمل کنید



colors.xml


<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#ffffff</color>
<color name="bg_gradient_start">#b21331</color>
<color name="bg_gradient_end">#820d2a</color>
<color name="bg_button_login">#380813</color>
</resources>




bg_button_rounded.xml

<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">

<!-- view background color -->
<solid
android:color="@color/bg_button_login" >
</solid>

<!-- If you want to add some padding -->
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp" >
</padding>

<!-- Here is the corner radius -->
<corners
android:radius="6dp" >
</corners>

</shape>



bg_form_rounded.xml


<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">

<!-- view background color -->
<solid
android:color="@color/white" >
</solid>

<!-- If you want to add some padding -->
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp" >
</padding>

<!-- Here is the corner radius -->
<corners
android:radius="6dp" >
</corners>

</shape>




bg_gradient.xml


<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >

<gradient
android:gradientRadius="750"
android:endColor="@color/bg_gradient_end"
android:startColor="@color/bg_gradient_start"
android:type="radial" />
</shape>




strings.xml

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

<string name="app_name">Multi Language App</string>
<string name="action_settings">Settings</string>

<string name="welcome">Welcome!</string>
<string name="email">Email Address</string>
<string name="password">Password</string>
<string name="login">Login</string>
<string name="signup">Don\'t have account? Sign Up</string>

</resources>





تو این مرحله از زیر پوشه RES به تعداد زبان هایی که می خواید پوشه بسازید و داخل انها string.xml ایجاد کنید
values-de, values-fr, values-hi, values-ja


values-de/strings.xml

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

<string name="welcome">Willkommen!</string>
<string name="email">Email Addresse</string>
<string name="password">passowrd</string>
<string name="login">Login</string>
<string name="signup">müssen nicht angemeldet? Anmeldung</string>

</resources>



values-fr/strings.xml

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

<string name="welcome">accueil</string>
<string name="email">adresse e-mail</string>
<string name="password">mot de passe</string>
<string name="login">connexion</string>
<string name="signup">Ne pas avoir un compte? signer</string>

</resources>



values-hi/strings.xml

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

<string name="welcome">स्वागतम</string>
<string name="email">ईमेल पता</string>
<string name="password">पासवर्ड</string>
<string name="login">लॉगिन</string>
<string name="signup">खाता नहीं है? साइन अप करें</string>

</resources>



values-ja/strings.xml

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

<string name="welcome">歓迎</string>
<string name="email">電子メールアドレス</string>
<string name="password">パスワード</string>
<string name="login">ログイン</string>
<string name="signup">アカウントをお持ちでない場合は? インアップ</string>

</resources>



activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_gradient"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:gravity="center"
android:orientation="vertical">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="40dp"
android:text="@string/welcome"
android:textColor="@color/white"
android:textSize="45dp"
android:textStyle="bold" />

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_form_rounded"
android:orientation="vertical" >

<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:background="@null"
android:hint="@string/email"
android:padding="5dp"
android:singleLine="true"/>

<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@null"
android:hint="@string/password"
android:inputType="textPassword"
android:padding="5dp" />
</LinearLayout>

<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:background="@drawable/bg_button_rounded"
android:text="@string/login"
android:textColor="@color/white"/>
</LinearLayout>

<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/signup"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
android:layout_marginBottom="25dp"
android:textColor="@color/white"/>

</RelativeLayout>



MainActivity.java

package ir.shetaw.multilanguageapp;


import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

getActionBar().hide();
}
}





منبع:انجمن دانشجویان کردستان ( مرجع کامل انواع برنامه های آندروید) (http://shetaw.ir)

gilas1368
یک شنبه 12 بهمن 1393, 13:03 عصر
دوست عزیز ممنون برای تلاش و راهنمائیتون
اما این کدهایی ک شما میذارید ب وفور در فضای نت و خوده document های گوگل پیدا میشه

اگ مطلب جدیدی برای آموزش دارید بزارید
ن این مطالب پیش پا افتاده رو

pcpsoft
دوشنبه 13 بهمن 1393, 06:55 صبح
سلام دوستان,فکر کنم بعضی از دوستان اشتباه متوجه شدن منظورم از چند زبانه,چند تب یا منو نیست منظورم multi language هستش,یعنی برنامهای که چندین زبان رو پشتیبانی میکنه