Во-первых, я хотел бы поблагодарить всех присутствующих здесь, потому что я новичок и многому научился, просто читая вопросы и ответы, которые вы публикуете. Я пытаюсь передать большое количество текста конечным пользователям, и, будучи в состоянии сделать это с помощью новых классов и файлов .xml, это становится громоздким. я думал о потоке, выравнивающем приложение, просто имея единственный макет xml для определенного набора текстовых строк и просто изменив @string / ????? через кнопку onclick и setText, но узнал, что я не могу изменить начальное значение @string в XML-файле. вопрос это правда? и есть ли более эффективный способ сделать это, то есть (установка android: text в var и установка var в java для конкретной строки) или мне нужен новый макет xml для каждой строки? (это много траты, если вы спросите меня) и немного понимания, в настоящее время есть около 250 различных строк с минимум 5 параграфов и растут.
вот мой код.
фрагмент первой Java
import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class Monlt extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.monolt);
final MediaPlayer buttonsound = MediaPlayer.create(Monlt.this, (R.raw.buttonclick));
Button button1 = (Button) findViewById(id.button1);
Button button2 = (Button) findViewById(id.button2);
Button button3 = (Button) findViewById(id.button3);
Button button4 = (Button) findViewById(id.button4);
Button button5 = (Button) findViewById(id.button5);
Button button6 = (Button) findViewById(id.button6);
Button button7 = (Button) findViewById(id.button7);
Button button8 = (Button) findViewById(id.button8);
Button button9 = (Button) findViewById(id.button9);
Button button11 = (Button) findViewById(id.button11);
Button button12 = (Button) findViewById(id.button12);
Button button13 = (Button) findViewById(id.button13);
Button button14 = (Button) findViewById(id.button14);
Button button15 = (Button) findViewById(id.button15);
Button button16 = (Button) findViewById(id.button16);
Button button17 = (Button) findViewById(id.button17);
Button button18 = (Button) findViewById(id.button18);
Button button19 = (Button) findViewById(id.button19);
Button button21 = (Button) findViewById(id.button21);
button1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
buttonsound.start();
final TextView mview = (TextView) findViewById(R.id.solayout2);
mview.setText("mono1"); //this was my first string to pass
startActivity(new Intent("com.nvar.Sorders.Mono.ASO1"));
}
});
button2.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
buttonsound.start();
startActivity(new Intent("com.nvar.Sorders.ASO1"));
final TextView mview = (TextView) findViewById(R.id.solayout2);
mview.setText("@string/mono2");/this is the second string to pass
}
});
`
теперь этот код работает, когда я удаляю 2 строки текстового представления в onclick
тогда он вызывает другой класс Aso1, который я хотел бы сохранить для дальнейшего использования.
Aso1 Java-код
`
пакет com.nvar.Sorders.Mono;
import com.nvar.Sorders.R;
import android.app.Activity;
import android.os.Bundle;
public class Aso1 extends Activity {
// Called when the activity is first created.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.solayout2);
}
}
`
а затем первый xml
`
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/solayout2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="mview"/>
<!-- android:text="@string/monoaso1"/>
-->
<!-- this is were i was playing with the strings />
-->
</LinearLayout>
</ScrollView>
`
любая помощь в этом вопросе будет принята с благодарностью, и помните "noob" для java / android! так что, если есть образец того, на что я мог или должен был смотреть, не стесняйтесь бить меня по голове и указывать в правильном направлении. я не против читать :)
еще раз спасибо.