Я просмотрел все ответы, которые вижу, но не смог найти решение. Я новичок в Android Studio и в мире Java. Я учусь, но мне нужно обратиться за помощью.
Я создал очень простое приложение, используя виджет WebView. Виджет WebView в основном загружает сайт, который я уже полностью создал в PHP. Я пытаюсь добавить к приложению пролистывание sh, чтобы дать пользователям возможность управлять аналогично Facebook или другим социальным сетям. Независимо от того, что я пытаюсь, мне не удалось правильно вложить свой код или создать правильные ссылки в моем файле activity_main. xml, чтобы получить что-нибудь, кроме cra sh.
Я специально попытался лишить мой код какой-либо конфиденциальной идентифицирующей информации. Имя пакета отличается в моем фактическом файле. Любая помощь будет принята с благодарностью.
Вот моя область деятельности. 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"
xmlns:MyEmanuel="http://schemas.android.com/apk/res-auto"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
tools:context=".MainActivity">
<WebView
android:id="@+id/Example"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
Моя основная деятельность. java выглядит следующим образом:
package com.example.example;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Window;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView browser = (WebView) findViewById(R.id.Example);
browser.loadUrl("https://www.google.com");
/*load message while peek loads */
getWindow().setFeatureInt(Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
WebView myWebView = (WebView) findViewById(R.id.Example);
myWebView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
//Make the bar disappear after URL is loaded, and changes string to Loading...
setTitle("Loading a fresh perspective...");
setProgress(progress * 100); //Make the bar disappear after URL is loaded
// Return the app name after finish loading
if (progress == 100)
setTitle("Peek Devotion");
}
});
/*enables javascript with-in webview */
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
browser.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView viewx, String urlx) {
/* Check to see if URL is with-in My Emanuel, stay in app if so */
if (Uri.parse(urlx).getHost().equals("www.google.com")) {
viewx.loadUrl(urlx);
return false;
}
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(urlx));
startActivity(intent);
return true;
}
});
}
@Override
public void onBackPressed() {
/* check to see if back button is pressed, if so return to last page */
WebView webView = (WebView) findViewById(R.id.Example);
if (webView.canGoBack()) {
webView.goBack();
} else {
super.onBackPressed();
}
}
@Override
protected void onPause() {
/*detects when window loses focus to refresh peek while closing .Resume to change */
super.onPause();
WebView webView = (WebView) findViewById(R.id.Example);
webView.reload();
}
}