2017-10-23 15 views
-4

한 활동에서 두 번째로 데이터를 전달하고 싶지만 두 번째 활동을 시작하지 않으려합니다. Intent를 사용하여 의도를 가지고 활동을 시작해야하기 때문에이 활동을 시작하지 않으려합니다. 어떻게해야합니까?이 두 번째 활동을 시작하지 않고 활동의 데이터를 다른 활동으로 전달하는 방법은 무엇입니까?

+0

[링크] (https://stackoverflow.com/questions/3624280/how-to-use-sharedpreferences-in-android-to-store-fetch-and-edit-values) 다음을 수행 할 수도 있습니다. [Link] (https://stackoverflow.com/questions/7145606/how-android-sharedpreferences-save-store-object)에서 설명하는 개체 – Mahsa

+0

그렇지 않은 경우 왜 데이터를 활동에 보내려고합니까? 그것을 시작하려고합니까? 해당 정보를 다른 활동으로 보내는 목적은 무엇입니까? 데이터를 저장하는 경우 Sqlite 또는 SharedPreference를 사용하여 설정을 지정할 수 있습니다. – Soumya

+0

연습하려면 외국어 단어를 배우기 위해 응용 프로그램을 만들고 싶으므로 첫 번째 활동은 "메뉴"로, 메뉴에서는 2 개의 다른 활동을 시작하는 2 개의 단추가됩니다. 첫 번째 활동은 단어가있는 활동이 될 것이고, 나는이 단어 나 아는 것을 확인합니다. 그런 다음 메뉴에서 내가 선택한 단어를 보여주는 활동을 시작하는 버튼이 될 것입니다. 잘 모르겠습니다. – Radek

답변

1
SharedPreferences preferences = 
PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); 

String myString = preferences.getString("myString", "N/A"); 
int myInt = preferences.getInt("myInt", -1); 

U 그것은이 시작 아니지만 두 번째 활동에 데이터를 전달하는 논리적 소리를하지 않는 환경

0

을 공유 사용할 수 있습니다. 그러나 같은 여러 가지 방법으로 수행 할 수 있습니다 : 두 번째 활동 (나쁜 방법)의 변수 설정을 통해

  1. ;
    SecondActivity.someValue = value; // for static variables
    또는 (new SecondActivity()).someValue = value; // for non-static variables

  2. 공유 - 환경 설정에 데이터를 넣고 다음에서 당신이 원하는 목적지 것을 사용. 첫 번째 활동에서
    :
    SharedPreferences.Editor prefEditor = PreferenceManager .getDefaultSharedPreferences(context).edit(); prefEditor.putString("key", "value"); prefsEditor.commit();

    두 번째 활동에서 :
    당신은 아마 당신의 디자인을 다시 생각해야 SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context); String mValue= pref.getString("key", "default-value");

+0

좋아요, 내가 원한 말을하지 않았기 때문에 논리적으로 들리지 않을 수도 있습니다. 프로그램하기. 연습을 위해 외국어로 된 단어를 배우기 위해 앱을 만들었습니다. 첫 번째 활동은 메뉴로, 2 개의 버튼으로 2 개의 활동을 시작합니다. 먼저 단어로 된 활동이 될 것입니다. 그리고 나는이 말이나 아는 것을 확인합니다. 그리고 나서 메뉴에는 내가 모르는 단어를 보여주는 활동을 시작하는 버튼이 될 것입니다; p 당신이 그것을 이해할 것이라고 생각합니다. – Radek

0

. 액티비티는 UI 구성 요소입니다. UI가 없다면 액티비티를 시작할 필요가 없습니다.

그냥 "할 일"이 필요하면 IntentService을 사용하십시오. 액티비티를 시작하는 방법과 비슷한 의도로 시작할 수 있습니다. UI가 없습니다.