Abdullha Mohammad نشر 14 مايو 2021 أرسل تقرير نشر 14 مايو 2021 تظهر لدي الجمله بالخط الأحمر كيف احل هذا المشكله اقتباس
0 Wael Aljamal نشر 14 مايو 2021 أرسل تقرير نشر 14 مايو 2021 يجب وضع WebView داخل SwipeRefreshLayout. جافا: import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.webkit.WebView; import android.webkit.WebViewClient; public class SwipeDownRefresh extends AppCompatActivity { WebView webView; SwipeRefreshLayout swipe; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_swipe_down_refresh); swipe = (SwipeRefreshLayout) findViewById(R.id.swipeContainer); swipe.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { LoadWeb(); } }); LoadWeb(); } public void LoadWeb(){ webView = (WebView) findViewById(R.id.webView); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setAppCacheEnabled(true); webView.loadUrl("https://www.google.com/"); swipe.setRefreshing(true); webView.setWebViewClient(new WebViewClient() { public void onPageFinished(WebView view, String url){ swipe.setRefreshing(false); } }); } @Override public void onBackPressed(){ if (webView.canGoBack()){ webView.goBack(); }else { finish(); } } } XML: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" > <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipeContainer" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent"> <WebView android:id="@+id/webView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentEnd="true" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_alignParentStart="true" android:layout_alignParentTop="true" /> </android.support.v4.widget.NestedScrollView> </android.support.v4.widget.SwipeRefreshLayout> </RelativeLayout> يمكنك التحديث أيضا من خلال: Webview.Reload(); مثال آخر: XML: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="net.softglobe.tutorials.WebViewActivity"> <ProgressBar android:id="@+id/pb" android:layout_width="match_parent" android:layout_height="wrap_content" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:visibility="gone"/> <android.support.v4.widget.SwipeRefreshLayout android:layout_below="@+id/pb" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swiperefresh" android:layout_width="match_parent" android:layout_height="match_parent"> <WebView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" /> </android.support.v4.widget.SwipeRefreshLayout> </RelativeLayout> #################33 java: package net.softglobe.tutorials; import android.graphics.Bitmap; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.webkit.WebChromeClient; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.ProgressBar; public class WebViewActivity extends AppCompatActivity { private WebView mWebView; private ProgressBar mProgressBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_web_view); mWebView = (WebView) findViewById(R.id.webview); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.loadUrl("https://www.google.com"); //SwipeRefreshLayout final SwipeRefreshLayout finalMySwipeRefreshLayout1; finalMySwipeRefreshLayout1 = findViewById(R.id.swiperefresh); finalMySwipeRefreshLayout1.setOnRefreshListener( new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { // This method performs the actual data-refresh operation. // The method calls setRefreshing(false) when it's finished. mWebView.loadUrl(mWebView.getUrl()); } }); // Get the widgets reference from XML layout mProgressBar = findViewById(R.id.pb); mWebView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { // Visible the progressbar mProgressBar.setVisibility(View.VISIBLE); } @Override public void onPageFinished(WebView view, String url) { finalMySwipeRefreshLayout1.setRefreshing(false); mProgressBar.setVisibility(View.GONE); } }); mWebView.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int newProgress){ // Update the progress bar with page loading progress mProgressBar.setProgress(newProgress); if(newProgress == 100){ // Hide the progressbar mProgressBar.setVisibility(View.GONE); } } }); } } اقتباس
0 Abdullha Mohammad نشر 14 مايو 2021 الكاتب أرسل تقرير نشر 14 مايو 2021 ممكن توضحه لي اكثر بعد اذنك وتبسطهن لي أو تقولي ملف الضروري بس اقتباس
0 Wael Aljamal نشر 14 مايو 2021 أرسل تقرير نشر 14 مايو 2021 بتاريخ 43 دقائق مضت قال Abdullha Mohammad: ممكن توضحه لي اكثر بعد اذنك وتبسطهن لي أو تقولي ملف الضروري بس أول شيفرتين يمثلان برنامج تجريبي واحد، الجزء الأول بعد كلمة جافا و الجزء الخاص بالغرض بعد كلمة xml. ثم ذكرت اسم الدالة الاي تقزم بعمل إعادة التحميل re load. ثم مثال فيه كود جافا و xml سويا. كل مثال يمثل تطبيق تجريبي، اعمل مشروع جانبي و حاول فهم الشيفرة ثم خذ منهم ما تحتاجه لتعديل برنامجك. اقتباس
0 Abdullha Mohammad نشر 15 مايو 2021 الكاتب أرسل تقرير نشر 15 مايو 2021 برضو طلع عندي نفس المشكله. الأكواد في ملف جاف اشتغل عندي من قبل بس في ملف xml ما عم يقبل ما ادري ايش المشكله مع العلم اني أضفت الصلاحيه اقتباس
0 Wael Aljamal نشر 15 مايو 2021 أرسل تقرير نشر 15 مايو 2021 بتاريخ 11 دقائق مضت قال Abdullha Mohammad: برضو طلع عندي نفس المشكله. الأكواد في ملف جاف اشتغل عندي من قبل بس في ملف xml ما عم يقبل ما ادري ايش المشكله مع العلم اني أضفت الصلاحيه لا يمكن حل المشكلة عن طريق الصور. ارجو اتباع الشرح النظري لان بعض الاكواد قديمة. اقتباس
السؤال
Abdullha Mohammad
تظهر لدي الجمله بالخط الأحمر كيف احل هذا المشكله
5 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.