Я сделал 3 textviews
, при нажатии на любой из них, я хочу, чтобы «Текст» внутри любого из этих textviews
был отправлен в другой класс.Получение намерений и применение sharedpreferences
Это XML для TextViews
<TextView
android:id="@+id/brouni"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:clickable="true"
android:gravity="left"
android:paddingTop="10dp"
android:text=" 1-I will help my brother go to university"
android:textSize="15dp" />
<TextView
android:id="@+id/goal2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="left"
android:paddingTop="10dp"
android:text=" 2-I will buy my mother a house"
android:textSize="15dp" />
<TextView
android:id="@+id/goal3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="left"
android:paddingTop="10dp"
android:text=" 3-I will finish this application"
android:textSize="15dp" />
</LinearLayout>
И это класс Java, содержащий их
public class Family extends Activity implements OnClickListener {
TextView brouni1;
TextView goal2;
TextView goal3;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.family);
goal3 = (TextView) findViewById(R.id.goal3);
goal3.setOnClickListener(this);
goal2 = (TextView) findViewById(R.id.goal2);
goal2.setOnClickListener(this);
brouni1 = (TextView) findViewById(R.id.brouni);
brouni1.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.brouni:
Intent open = new Intent(Family.this, Xp.class);
brouni1.getText();
startActivity(open);
break;
case R.id.goal2:
Intent open1 = new Intent (Family.this , Xp.class);
startActivity(open1);
break;
case R.id.goal3:
Intent open11 = new Intent(Family.this , Xp.class);
startActivity(open11);
break;
}
}
}
И это класс Java Я хочу, чтобы текст внутри textview
быть направляется на адрес
public class Xp extends Activity {
Button accept;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.xp);
accept = (Button) findViewById(R.id.accept);
accept.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(Xp.this, Drawer.class);
startActivity(i);
finish();
}
});
}
}
И, наконец, это класс (Основной класс), который я хочу, чтобы тот же текст появился после выбора «Принять». И быть спасенным там, и может быть удалено, а также таким образом, чтобы позже было добавлено несколько текстов.
public class MainClass extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Я оставил его пустым, чтобы вы, ребята, могли предложить мне правильный код, чтобы восстановить эти намерения и спасти их.
Реферат: Как получить мое намерение, содержащее текст в другом классе, и Как их применить sharedpreferences
, чтобы сохранить их в классе, который они отправляют? ???
Спасибо, но я хочу, чтобы получить намерение от TextView, которая была нажата, я имею в виду, что не должно быть цели 3. Это может быть любое другое «текстовое представление», как я могу это сделать? –
Сделка с этим. Теперь я сделал еще одно текстовое сообщение, и я хочу изменить его на выбранный текст. например, если был выбран open, я хочу, чтобы он был равен 100, если был выбран open1, я хочу, чтобы его было 200, и если был открыт open11, я хочу, чтобы оно было 300 и так далее. –
'Bundle extras = getIntent(). GetExtras(); if (extras! = Null) { Строковое значение = extras.getString ("intent_extra"); Настройки SharedPreferences = getSharedPreferences (PREFS_NAME, 0); SharedPreferences.Editor edit = settings.edit(); edit.putString (PREFS_NAME, значение); textV.setText (значение); xbnum.setText ("100XB"); edit.commit(); } ' –