2014-10-31 39 views
0

嗨,我不能登錄已經在我的礦山主要活動的網頁已經通過內部到另一個活動,但我無法得到提取。我怎樣才能解決這個問題傳遞意圖無法獲得額外的();

這是我的主要活動 公共類ViewActivity延伸活動{

private EditText mTextUserName; 
private EditText mTextPassword; 
public String user_name; 
public String pass_word; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    mTextUserName = (EditText) findViewById(R.id.textUserName); 
    mTextPassword = (EditText) findViewById(R.id.textPassword); 



    final Button mButtonLogin = (Button) findViewById(R.id.buttonLogin); 
    mButtonLogin.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 

      user_name = mTextUserName.getText().toString(); 
      pass_word = mTextPassword.getText().toString(); 

      Intent goToNextActivity = new Intent(getApplicationContext(), ViewActivity.class); 
      goToNextActivity.putExtra("username", user_name); 
      goToNextActivity.putExtra("username", pass_word); 

      startActivity(goToNextActivity); 


     } 
    }); 

這裏查看活動

private WebView webView; 

public void onCreate(Bundle savedInstanceState) { 


    super.onCreate(savedInstanceState); 
    setContentView(R.layout.view); 
    webView = (WebView) findViewById(R.id.webView); 
    webView.getSettings().setUseWideViewPort(true); 
    webView.setScrollbarFadingEnabled(false); 
    webView.getSettings().setDefaultFontSize(20); 
    webView.getSettings().setBuiltInZoomControls(true); 
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.setWebViewClient(new MyWebViewClient()); 




    webView.loadUrl("http://something.com"); 



} 

private class MyWebViewClient extends WebViewClient { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     view.loadUrl(url); 
     Intent goToNextActivity = new Intent(getApplicationContext(), MainActivity.class); 
     goToNextActivity.getExtras(); 
     return true; 

    } 
} 

它加載一個網頁,但在

沒有登錄
+0

試試這個方法:getIntent()getStringExtra( 「用戶名」)。更多檢查:http://stackoverflow.com/questions/26625741/onactivityresult-and-failure-delivering-result-resultinfo-who-null-request-1/26626062#26626062 – 2014-10-31 13:28:49

回答

3
Intent extras = getIntent().getExtras(); 
String newString; 
if(extras == null) { 
    newString= null; 
} else { 
    newString= extras.getString("username"); 
} 

對於用戶名和密碼的兩個值,您給出相同的鍵值...請更改並嘗試。

+0

不工作((或者 – Andrew 2014-10-31 13:34:28

+0

什麼是你的錯誤正在越來越??你可以發佈你的logcat ... – micky 2014-10-31 13:35:54

+0

我不使用模擬器,直接到設備甚至亞行國防部不工作,因爲自定義rom – Andrew 2014-10-31 13:39:44

1

使用下面的代碼從意圖獲取數據: -

Intent intent = getIntent(); 
String username= intent.getStringExtra("username"); 

在上面的代碼中寫上shouldOverrideUrlLoading的方法。

1

這裏

Intent goToNextActivity = new Intent(getApplicationContext(), MainActivity.class);

你正在構建新Intent一個品牌,這是你想要什麼。您想使用啓動ActivityIntent

出於這個原因,你想用

Intent i = getIntent(); 

,因爲我們可以看到from the Activity DocsgetIntent()

返回已啓動該活動的意圖。

然後拿到extras如果他們不null

if (i.getExtras() != null) { 
    String userName = i.getStringExtra("username"); 
    String password = i.getStringExtra("password"); // you have a typo in your passing Intent 
} 

你需要你的Activity Context此所以最好/容易做到在onCreate(),而不是你的內部類,除非是有原因的你不能在那裏做。

+0

好的我這樣做我會盡快發佈結果 – Andrew 2014-10-31 13:41:08

+0

@Andrew好的,它應該爲你工作,但要確保你明白*爲什麼*。如果沒有,問。 – codeMagic 2014-10-31 13:42:03

0

試試這種方式,希望這會幫助你解決你的問題。

有兩種方法將數據一個活動傳遞給另一個活動。

1.將數據添加到意圖。

怎麼放:

Intent goToNextActivity = new Intent(); 
goToNextActivity.putExtra("username", user_name); 
goToNextActivity.putExtra("password", pass_word); 

如何獲得:

String username = getIntent().getStringExtra("username"); 
String password = getIntent().getStringExtra("password"); 

2.添加數據捆綁,並添加捆意圖。

怎麼放:

Intent goToNextActivity = new Intent(); 
Bundle bundle = new Bundle(); 
bundle.putString("username", user_name); 
bundle.putString("password", pass_word); 
goToNextActivity.putExtras(bundle); 

如何獲得:

String username = getIntent().getExtras().getString("username"); 
String password = getIntent().getExtras().getString("password"); 
+0

非常感謝,我會盡力 – Andrew 2014-10-31 13:40:22