2016-10-29 4 views
0

Hauptaktivität zur zweiten Aktivität und von zweiter Aktivität zur Hauptaktivität nach Schaltfläche.Hauptaktivität zur zweiten Aktivität und von der zweiten Aktivität zur Hauptaktivität durch Schaltfläche

Ich habe diesen Code versucht, aber wenn ich auf den Knopf klicke, geht es nicht zur Hauptaktivität, ich habe alle Optionen ausprobiert, aber es funktioniert nicht.

MainActivity

public class MainActivity extends AppCompatActivity { 
    private WebView webview; 
    private Button button; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     webview = (WebView) findViewById(R.id.webView); 
     WebSettings webSettings = webview.getSettings(); 
     webSettings.setJavaScriptEnabled(true); 
     webSettings.setDomStorageEnabled(true); 
     webview.loadUrl("http://www.google.com/"); 
     webview.setWebViewClient(new WebViewClient() { 
      @Override 
      public void onReceivedError(WebView view, int errorCode, String description, 
             final String failingUrl) { 
       setContentView(R.layout.activity_main2); 

       super.onReceivedError(view, errorCode, description, failingUrl); 


      } 

     }); 
     button = (Button) findViewById(R.id.button); 
     button.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View view) { 
       webview.loadUrl("http://www.google.com/"); 
      } 
     }); 
    } 
} 

Main2Activity

public class Main2Activity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main2); 
     findViewById(R.id.button2).setOnClickListener(new handleButton()); 
    } 

    class handleButton implements View.OnClickListener { 
     public void onClick(View v) { 
      Intent intent = new Intent(Main2Activity.this, MainActivity.class); 
      startActivity(intent); 

     } 
    } 
} 

ACTIVITY_MAIN.XML

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
    tools:context="ram.idea.MainActivity"> 

<WebView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/webView" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentBottom="true" /> 

<Button 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="HOME" 
    android:id="@+id/button" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" /> 
    </RelativeLayout> 

ACTIVITY_MAIN2.XML

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context="ram.idea.Main2Activity"> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="New Button" 
    android:id="@+id/button2" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_marginLeft="82dp" 
    android:layout_marginStart="82dp" 
    android:layout_marginTop="135dp" /> 
    </RelativeLayout> 

Fehler:

Android manifestieren

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="ram.idea"> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
     <activity android:name=".MainActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity android:name=".Main2Activity"></activity> 
    </application> 
</manifest> 

Antwort

0

ich glaube, das Problem ist, dass Sie nicht über die Activity2Main eingeben, nur Sie die Ansicht festgelegt. Versuchen Sie:

webview.setWebViewClient(new WebViewClient() { 

    @Override 
    public void onReceivedError(WebView view, int errorCode, String description, 
           final String failingUrl) { 
     Intent intent = new Intent(MainActivity.this, Main2Activity.class); 
     startActivity(intent); 

     super.onReceivedError(view, errorCode, description, failingUrl); 


    } 

}); 

In Ihrer MainActivity. Und man könnte hinzufügen:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main2); 

    (Button) findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() { 

     public void onClick(View view) { 
      Intent intent = new Intent(Main2Activity.this, MainActivity.class); 
      startActivity(intent); 
     } 
    }); 
} 

Der komplette MainActivity:

public class MainActivity extends AppCompatActivity { 
private WebView webview; 
private Button button; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    webview = (WebView) findViewById(R.id.webView); 
    WebSettings webSettings = webview.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    webSettings.setDomStorageEnabled(true); 
    webview.loadUrl("http://www.google.com/"); 
    webview.setWebViewClient(new WebViewClient() { 
     @Override 
     public void onReceivedError(WebView view, int errorCode, String description, 
            final String failingUrl) { 
      Intent intent = new Intent(MainActivity.this, Main2Activity.class);// Try this 
      startActivity(intent); //Try this 
     } 
    }); 
    button = (Button) findViewById(R.id.button); 
    button.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View view) { 
      webview.loadUrl("http://www.google.com/"); 
     } 
    }); 
} 

} 

Hoffnung, dass Ihr Problem löst.

this happen when i added your code

+0

nopes ich will von main2activity zur hauptaktivität –

+0

hinzugefügt einige code – Timo

+0

Warum verwenden Sie eine zusätzliche Klasse? – Timo

0

Versuch zu verwenden: finish(); Methode nach dem StartActivity (Absicht);

Verwandte Themen