0

我有一個關於在an​​droid中使用edittext功能的問題。使用edittext更改mac地址android藍牙應用程序

我在我的應用程序的主要活動以下代碼:

private static String address = "00:00:00:00:00:00"; 
    //Then I have the on create below this 

在該行中,MAC地址必須被手動編輯和重新編譯每一次。我如何在另一個活動中使用edittext並獲取用戶輸入的值並取代mac地址。

爲了闡明第二個活動,它有一個用於用戶輸入的edittext區域,然後它有一個用於確認信息的按鈕。我想要的活動是當用戶單擊按鈕時,它將MAC地址發送到上面的主要活動。

另外,我在主要活動中設置了各種按鈕來發送各種藍牙信號。例如,按鈕fwd.id通過藍牙發送信號「前」:

public void onClick(View v) { 
    sendData("Front"); 

我想知道,如果在同一頁[對於結構的第二活性]上,我可以創建另一個的EditText來改變信號[在這種情況下'正面']正在發送。例如,如果用戶想要發送信號,而不是「前」,他們會將其輸入到編輯文本中,點擊與上述相同的按鈕以確認MAC地址,並且信號將改變爲他們輸入的任何內容。

如果有人可以請我幫忙,那會很棒。先謝謝你。如果您需要更多信息,請告訴我。

回答

0

據我瞭解你的問題,你可以使用intent.putExtra()方法從編輯文本傳遞地址。這應該是這樣的:

public void onClick(View v) { 
Intent i = new Intent(CurrentActivity.this, AnotherActivity.class); 
i.putExtra("macaddress", editText.getText().toString()); 
startActivity(i); 

現在,在另一個活動,你可以設置的MAC地址的值是此意圖

String address=getIntent().getExtras().getString("macaddress"); 

希望它有幫助攜帶的價值!

0

有可能完成這個的各種方式:

  1. 您的地址變量已經聲明爲static,所有你需要做的就是申報公開。從EditText字段獲取文本並將字符串地址設置爲所需的值。 例如,如果您的主要活動被稱爲MainActivity然後在第二個活動,你會做這樣的事情:

    MainActivity.address = newAddress // newAddress will be a string coming in from value entered in the EditText field. 
    
  2. 啓動第二個活動,其中包含的EditText字段中的結果。這意味着當第二個Activity完成時,MainActivity的onActivityResult方法將被調用,因爲這將是啓動第二個Activity的Activity。

然後,您可以將EditText的結果傳遞給主Activity,並在方法onActivityResult方法中更新您的String地址。