سلام . خواهش میکنم یکی کمک کنه . من میخوام یه بخش تنظیمات تو پروژم قرار بدم یعنی مثلا بتونم نوع و رنگ و اندازه فونت رو تو کل اکتیویتیها تغییر بدم اما نمیدونم چجوری اینکار رو بکنم .
البته یک اکتیویتی ساختم که توش دو تا اسپینر گذاشتم سه تا تکست ویو با یک باتون و یک ادیت تکست مشکلم اینجاست که وقتی ذخیرش میکنم نوشته های همین اکتیویتی تغییر میکنه و ذخیره میشه و بقیه اکتیویتی ها تغییر نمیکنه باید چیکار کنم که این تغییرات تو همه اکتیویتیها یا اون کلاس هایی که خودم میخوام اعمال بشه ؟
اینم کد :
البته یک اکتیویتی ساختم که توش دو تا اسپینر گذاشتم سه تا تکست ویو با یک باتون و یک ادیت تکست مشکلم اینجاست که وقتی ذخیرش میکنم نوشته های همین اکتیویتی تغییر میکنه و ذخیره میشه و بقیه اکتیویتی ها تغییر نمیکنه باید چیکار کنم که این تغییرات تو همه اکتیویتیها یا اون کلاس هایی که خودم میخوام اعمال بشه ؟
اینم کد :
کد:
package com.test;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.SharedPreferences;
import android.content.pm.ActivityInfo;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class Main extends Activity {
private Spinner spinner1,spinner2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_FULL_SENSOR);
final SharedPreferences shpsettings = getSharedPreferences("font", MODE_PRIVATE);
String font , size,color; {
font = shpsettings.getString("font", "0");
size = shpsettings.getString("size", "20");
color = shpsettings.getString("color", "0");
final EditText et=(EditText)findViewById(R.id.editText1);
TextView tv1=(TextView)findViewById(R.id.sekel);
TextView tv2=(TextView)findViewById(R.id.textView2);
TextView tv3=(TextView)findViewById(R.id.textView3);
spinner1 =(Spinner)findViewById(R.id.spinner1);
spinner2 =(Spinner)findViewById(R.id.spinner2);
Button btn=(Button)findViewById(R.id.sisil);
//size
et.setTextSize(Float.parseFloat(size));
tv1.setTextSize(Float.parseFloat(size));
tv2.setTextSize(Float.parseFloat(size));
tv3.setTextSize(Float.parseFloat(size));
btn.setTextSize(Float.parseFloat(size));
//color
int c = 0;
if(color.equals("0"))
{
c=Color.BLACK;
}
else if(color.equals("1"))
{
c=Color.WHITE;
}
else if(color.equals("2"))
{
c=Color.RED;
}
else if(color.equals("3"))
{
c=Color.BLUE;
}
et.setTextColor(c);
tv1.setTextColor(c);
tv2.setTextColor(c);
tv3.setTextColor(c);
btn.setTextColor(c);
//font
Typeface font1 = null ;//= Typeface.createFromAsset(getAssets(), "arial.ttf");
if(font.equals("0"))
{
font1=Typeface.createFromAsset(getAssets(), "BMorvarid.ttf");
}
else if(font.equals("1"))
{
font1=Typeface.createFromAsset(getAssets(), "BKOODB.TTF");
}
else if(font.equals("2"))
{
font1=Typeface.createFromAsset(getAssets(), "andlso.ttf");
}
else if(font.equals("3"))
{
font1=Typeface.createFromAsset(getAssets(), "Far_Aman.ttf");
}
et.setTypeface(font1);
tv1.setTypeface(font1);
tv2.setTypeface(font1);
tv3.setTypeface(font1);
btn.setTypeface(font1);
et.setText(size);
final List<String> list = new ArrayList<String>;();
list.add("نازنین");
list.add("تیتر");
list.add("آفاق");
list.add("رفاقت");
final ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>;(this, android.R.layout.simple_spinner_item,list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(dataAdapter);
spinner1.setSelection(Integer.parseInt(font));
final List<String> list1 = new ArrayList<String>;();
list1.add("سیاه");
list1.add("سفید");
list1.add("قرمز");
list1.add("آبی");
final ArrayAdapter<String> dataAdapter1 = new ArrayAdapter<String>;(this, android.R.layout.simple_spinner_item,list1);
dataAdapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(dataAdapter1);
spinner2.setSelection(Integer.parseInt(color));
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (Integer.parseInt(et.getText().toString())<=0 || Integer.parseInt(et.getText().toString())>30)
{
Toast.makeText(getApplicationContext(),"اندازه قلم باید عددی بین 0 تا 30 باشد", Toast.LENGTH_SHORT).show();
}
else
{
SharedPreferences.Editor shpE= shpsettings.edit();
shpE.putString("font",Integer.toString(spinner1.getSelectedItemPosition ()));
shpE.putString("size", et.getText().toString());
shpE.putString("color",Integer.toString(spinner2.getSelectedItemPosition ()));
shpE.commit();
Toast.makeText(getApplicationContext(), "تغییرات با موفقیت ذخیره شد", 1).show();
}
}
});
}
}
}