Ich versuche, Daten von einer Aktivität zu einer anderen zu senden und Toast auch zu zeigen, wenn die Taste gedrückt wird Ich versuche, beide zur gleichen Zeit zu erreichen ich zugewiesen die Taste ist add_to_cart
und ich versuchte, darunter Code und ich habe nichtErstellen einer Schaltfläche zum Anzeigen eines Toast und Senden von Daten an eine andere Aktivität
Button customToastButton = (Button) this.findViewById(R.id.add_to_cart);
customToastButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//get the LayoutInflater and inflate the custom_toast layout
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.cart_toast, (ViewGroup)
findViewById(R.id.toast_layout_root));
//get the TextView from the custom_toast layout
TextView text = (TextView) layout.findViewById(R.id.toastText);
text.setText("Item as been added to cart");
//create the toast object, set display duration,
//set the view as layout that's inflated above and then call show()
Toast t = new Toast(getApplicationContext());
t.setDuration(Toast.LENGTH_SHORT);
t.setView(layout);
t.show();
Bundle intent = getIntent().getExtras();
if (intent != null) {
firstname= intent.getString("Gladwin");
secondname= intent.getString("james");
}
}
});
der Toast Teil funktioniert gut funktionieren, aber nicht der Datenteil sendet und ich versuchte Implementierung separat diesen Code die Daten zu senden, war aber nicht responsive und unten ist der Code, den ich verwende, um die gesendeten Daten zu empfangen
private String firstname;
private String secondname;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cart);
TextView txtFirst=(TextView)findViewById(R.id.text1);
txtFirst.setText(firstname);
TextView txtSecond=(TextView)findViewById(R.id.textview1);
txtSecond.setText(secondname);
und dies ist der XML-Teil des Aufnahme Ende
<TextView
android:id="@+id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp"
android:text=""
android:textSize="20sp" />
<TextView
android:layout_below="@+id/text1"
android:id="@+id/textview1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp"
android:text=""
android:textSize="20sp" />
Ich weiß, dass es eine gibt viele Anfängerfehler leid, dass tho
haben Sie die Aktivität geöffnet, die die Absicht empfängt, bevor auch die Absicht vorbei? – Opiatefuchs
Ja, ich könnte nur, wenn ich den Code wie diese 'öffentliche void add_to_cart (View anzeigen) { Intent nextIntent = neue Absicht (this, Warenkorb.Klasse); startActivity (nextIntent); } ' – Eggsy
ok, es ist möglich, dass die Aktivität noch geöffnet ist und nicht die Absicht hat. Wenn ja, müssen Sie entweder diese Empfangsaktivität beenden, wenn Sie sie verlassen, oder auf andere Weise die geschützte Methode onNewIntent() überschreiben und sie dort abfangen. Dann müssen Sie das Attribut singleTop in Ihrem Manifest auf diese Aktivität setzen. – Opiatefuchs