Ich habe eine untere Navigationsleiste, die zwischen 5 Fragmenten wechselt. Eine dieser 5 Schaltflächen sollte WebView (Newsfeed) öffnen und etwas HTML anzeigen. Der Code, der die newsfeed.xml nennt, ist dies:Öffnen einer Aktivität aus einem Fragment
public class newsfeedFragment extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.newsfeed,container,false);
return v;
}
}
Jetzt habe ich ein YouTube-Tutorial folgte den HTML von einer Website (Code unten) zu ziehen. Im Lernprogramm befindet sich der Code in seiner eigenen Aktivität und wird nicht innerhalb eines Fragments aufgerufen. Ich bin mir nicht sicher, wie man diese 2 Codeschnipsel kombiniert, um das Webview in meinem Fragment zu erstellen. Hilfe wäre sehr willkommen!
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends ActionBarActivity {
private WebView myWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myWebView = (WebView)findViewById(R.id.webView);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.loadUrl("http://www.website.com");
myWebView.setWebViewClient(new WebViewClient());
}
@Override
public void onBackPressed() {
if(myWebView.canGoBack()) {
myWebView.goBack();
} else {
super.onBackPressed();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
Der Titel und der Fragetext sind etwas inkonsistent. Möchten Sie eine Aktivität aus einem Fragment starten oder eine Webansicht in einem Fragment öffnen? – Henry
Eigentlich wäre es ideal, das Webview (zweites Code-Snippet) im Fragment zu haben. – sojutyp