我的活动中遇到了致命错误和字符串资源错误。 这是我的字符串代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Favorites</string>
<string name="action_settings">تنظیمات</string>
<string name="hello_world">Hello world!</string>
<string name="title_activity_favorites">لیست علاقه مندی ها</string>
<string name="favorites">لیست علاقه مندی ها</string>
<string name="title_activity_show__subjects">نمایش مبحث ها</string>
<string name="favorites_added">به لیست علاقه مندی ها افزوده شد</string>
<string name="favorites_removed">از لیست علاقه مندی ها حذف شد</string>
<string name="subject_1">شروع</string>
<string name="subject_2">آموزش عملی</string>
<string name="subject_3">وسایل مورد نیاز</string>
<string name="subject_4">تنظیمات</string>
<string name="subject_5">خروج</string>
<string name="subject_text_1">متن مربوط به آموزش اول</string>
<string name="subject_text_2">متن مربوط به آموزش دوم</string>
<string name="subject_text_3">متن مربوط به آموزش سوم</string>
<string name="subject_text_4">متن مربوط به آموزش چهارم</string>
<string name="subject_text_5">متن مربوط به آموزش پنجم</string>
<string name="alo_text_1">مقاومت</string>
<string name="alo_text_2">سلف</string>
<string name="alo_text_3">خازن</string>
<string name="alo_text_4">آمپرسنج</string>
<string name="alo_text_5">مدولاسیون</string>
<string name="alo_text_6">کلمات اختصاری در موبایل</string>
<string name="alo_text_7">فیلتر</string>
<string name="alo_text_8">بخش های اصلی گوشی</string>
<string name="alo_text_9">صفحه بعدی</string>
<string name="alo_text_10">ترانزیستور</string>
<string name="alo_text_11">دیود</string>
<string name="alo_text_12">کریستال</string>
<string name="alo_text_13">بخش تغذیه</string>
<string name="alo_text_14">بخش شارژ</string>
<string name="alo_text_15">بخش دیجیتال</string>
<string name="alo_text_16">بخش کنترل</string>
<string name="alo_text_17">واسط های کاربری</string>
<string name="alo_text_18">آی سی درایور</string>
<string name="alo_text_19">ال سی دی</string>
<string name="alo_text_20">بخش مخابرات</string>
<string name="alo_text_21">بخش RF</string>
<string name="alo_text_22">بخش صوتی</string>
<string name="alo_text_23">خطوط pcm</string>
<string name="alo_text_24">آی سی ها</string>
<string name="alo_text_25">شابلون زدن</string>
<string name="alo_text_26">فلش کردن</string>
<string name="alo_1">مقاومت</string>
<string name="alo_2">سلف</string>
<string name="alo_3">خازن</string>
<string name="alo_4">آمپرسنج</string>
<string name="alo_5">مدولاسیون</string>
<string name="alo_6">کلمات اختصاری در موبایل</string>
<string name="alo_7">فیلتر</string>
<string name="alo_8">بخش های اصلی گوشی</string>
<string name="alo_9">صفحه بعدی</string>
<string name="alo_10">ترانزیستور</string>
<string name="alo_11">دیود</string>
<string name="alo_12">کریستال</string>
<string name="alo_13">بخش تغذیه</string>
<string name="alo_14">بخش شارژ</string>
<string name="alo_15">بخش دیجیتال</string>
<string name="alo_16">بخش کنترل</string>
<string name="alo_17">واسط های کاربری</string>
<string name="alo_18">آی سی درایور</string>
<string name="alo_19">ال سی دی</string>
<string name="alo_20">بخش مخابرات</string>
<string name="alo_21">بخش RF</string>
<string name="alo_22">بخش صوتی</string>
<string name="alo_23">خطوط pcm</string>
<string name="alo_24">آی سی ها</string>
<string name="alo_25">شابلون زدن</string>
<string name="alo_26">فلش کردن</string>
这是我使用alo_number字符串的活动:
package vangah.dregooshitsho;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
public class Show_Subject2 extends Activity {
public String alo_number;
public SharedPreferences shared;
public SharedPreferences.Editor editor;
Globals2 global = new Globals2();
public ImageView iv_favorites;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.show_subjects);
iv_favorites = (ImageView) findViewById(R.id.imageView1);
Bundle extras = getIntent().getExtras();
if (extras != null)
alo_number = extras.getString("alo_number");
TextView tv1 = (TextView) findViewById(R.id.textView1);
String stringName_1 = "alo_" + String.valueOf(alo_number);;
int resID_1 = getResources().getIdentifier(stringName_1, "string", getPackageName());
tv1.setText(resID_1);
// Favorites
shared = getSharedPreferences("Prefs", MODE_PRIVATE);
editor = shared.edit();
final int subject2_number_int = Integer.parseInt(alo_number);
final String this_subject2 = "alo_" + String.valueOf(subject2_number_int);
final Boolean b1 = shared.getBoolean(this_subject2, false);
if (b1){
iv_favorites.setImageResource(R.drawable.favorite_selected);
}else{
iv_favorites.setImageResource(R.drawable.favorite_not_selected);
}
iv_favorites.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Boolean b2 = shared.getBoolean(this_subject2, false);
if (b2){
editor.putBoolean(this_subject2, false);
editor.apply();
iv_favorites.setImageResource(R.drawable.favorite_not_selected);
// show message
String message = getResources().getString(R.string.favorites_removed);
Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
}else{
editor.putBoolean(this_subject2, true);
editor.apply();
iv_favorites.setImageResource(R.drawable.favorite_selected);
// show message
String message = getResources().getString(R.string.favorites_added);
Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.itemFavorites:
startActivity(new Intent(Show_Subject2.this, Favorites.class));
return true;
case R.id.action_setting:
startActivity(new Intent(Show_Subject2.this, SettingActivity.class));
return true;
default:
return true;
}
}
}
我的debuggable告诉我错误在这一行:
alo_number = extras.getString("alo_number");
如何缓解此错误?