3

ここに画像の説明を入力最初のアクティビティからデータを送信できますが、2 番目のアクティビティで同じ手順を繰り返して ble デバイスにデータを送信することはできません。2 番目のアクティビティからデータを送信するにはどうすればよいですか?

4

2 に答える 2

0

これを使って保存

Intent intent = new Intent(FirstScreen.this, SecondScreen.class)
    intent .putExtra(strName, keyIdentifer );

これを使用して取得します

String newString;
if (savedInstanceState == null) {
    Bundle extras = getIntent().getExtras();
    if(extras == null) {
        newString= null;
    } else {
        newString= extras.getString("STRING_I_NEED");
    }
} else {
    newString= (String) savedInstanceState.getSerializable("STRING_I_NEED");
}
于 2015-11-17T08:11:59.467 に答える
0

次のアクティビティにデータを送信するだけの場合は、Intent を使用します。startActivity(意図);

そして、それを回復します

  value= getIntent().getExtras().getString("id_for_value");//if it is a string

また

2 番目のアクティビティから前のアクティビティにデータを送り返したい場合は、結果の開始アクティビティを使用する必要があります。

Intent intent=new Intent(MainActivity.this,SecondActivity.class);  
startActivityForResult(intent, 2)//where 2 is the request code
finish();

再び FirstActivity で、これをオーバーライドします

@Override  
   protected void onActivityResult(int requestCode, int resultCode, Intent data)  
   {  
             super.onActivityResult(requestCode, resultCode, data);  
              // check if the request code is same as what is passed  here it is 2  
               if(requestCode==2)  
                     {  
                        String result=data.getStringExtra("ResultId");   

                     }  
 }  

そして、PreviousActivity では、次のようにデータを渡します

Intent intent=new Intent();  
intent.putExtra("ResultId",message);  
setResult(2,intent);  
finish();
于 2015-11-17T08:19:41.323 に答える