آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

مشکل جالب در باز شدن صفحه وب در نرم افزار اندروید

وحید  11 سال پیش  11 سال پیش
+2 0

سلام دوستان

در ویدئوی ( نمایش محتویات HTML )  آقای آقاجانی نشون دادند که چجوری در یکی از صفحات خود نرم افزار یک صفحه ی وب رو بارگذاری کنیم. اما من سایت uncocoder.com رو که قرار می دم به درستی در خود نرم افزار باز می کنه اما سایت خودم و چند سایت دیگه مثل گوکل رو که قرار دادم برای باز کردن صفحه ی وب وارد مرورگر گوشی می شه، در صورتی که من می خوام در خود نرم افزار باز شه.

لطفا راهنماییم کنیدیه چیز دیگه می شه یک صفحه ای که کد اچ تی ام الش رو ندارم توی یکی از صفحات برنامه ذخیرش کنم تا برای باز شدنش نیاز به مصرف اینترنت نداشته باشه و سریع باز شه؟

0 0
سوال یک جوریه که نمیشه جوابی براش داد. اول از همه برنامه رو بجز روی گوشی خودتان روی ابزار دیگه های هم امتحان کردید ؟ اون جا هم همین مشکل رو داره ؟ (11 سال پیش)
0 0
معذرت می خوام اگر سوال نا مفهومه بله روی گوشی دیگری + خود امولیتور (11 سال پیش)
 برای این سوال 5 پاسخ وجود دارد.
پاسخ به سوال 
وحید  11 سال پیش
0 0

این قطعه کد هست:

 WebView Web = (WebView) findViewById(R.id.Web);
Web.loadUrl("http://uncocoder.com");

حالا اگر به جای سایت بزنم www.789-7979.ir وارد مرورگر میشه

اگر می خواید فیلم بگیرم آپلود کنم :)

 

0 0
کد سرس پایین ظاهرا گزینه خوبیه . البته این هم که شما نوشتید هم باید کار کنه . یک سوال می تونید تو پنجره properties این webview که دارید فایند می کنید نگاه کنید ببین خصوصیاتش چیه ؟ البته منظورم اون های است که ست شدن در ضمن مطمئن هستید این R.id.web رو جای دیگه ای از برنامه صدا نکردید ؟ (11 سال پیش)
0 0
اول اینکه با http وارد کن ، دوم اینکه فقط همون یک تیکه کد رو داری ؟ و سوم یه سرچی بزن ، تابستون من این سوال رو پرسیدم (11 سال پیش)
پاسخ به سوال 
ایوب شمسی  11 سال پیش
+4 0

سلام دوست عزیز از این کد استفاده کنید

 import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

public class Main extends Activity {

    private WebView mWebview ;

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        mWebview  = new WebView(this);

        mWebview.getSettings().setJavaScriptEnabled(true); // enable javascript

        final Activity activity = this;

        mWebview.setWebViewClient(new WebViewClient() {
            public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
                Toast.makeText(activity, description, Toast.LENGTH_SHORT).show();
            }
        });

        mWebview .loadUrl("http://www.google.com");
        setContentView(mWebview );

    }

}
 
اینم لینک سورس http://stackoverflow.com/questions/7305089/how-to-load-external-webpage-inside-webview
0 0
ممنون با همین کار کرد :) (11 سال پیش)
0 0
سلام چرا بعد از چرخوندن گوشی، صفحه رلود میشه و دوباره برمی گرده صفحه اول سایت؟!!! مشکل از کدوم قسمت کد هست؟! (11 سال پیش)
0 0
مشکل از کد نیست. کلا در اندروید زمانی که صفحه گوشی از حالت porterait (ایستاده) به حالت landscape (دراز:)) می ره اکتیویتی ریلود می شه و اطلاعات از بین می ره. حالا یا باید به برنامه بگید که کلا فقط در یک حالت استاده یا دراز باش یا براش در maniface تعریف کنید که اکتیویتی در هنگام چرخش از بین نره. هر دوشم با یک خط کد امکان پذیر هست. (11 سال پیش)
0 0
کد تعریف در اندروید مانیفست برای اینکه اکتیویتی بعد از چرخش از بین نره چی هست ؟ (11 سال پیش)
0 0
اینکدی که گذاشتید به خوبی جواب میده اما مشکلی داره این هست که با زدن کلید Back از اکتیویتی خارج میشه < چطور میشه کاری کرد که لینک های باز شده رو درن ارایه نگه داشت ؟ ! یا حداقل با زدن Back به لینک قبلی برگرده ! (11 سال پیش)
+1 0
Criss @ بعنوان پاسخ جدید کد موردنظرشما قرار داده شد! (11 سال پیش)
پاسخ به سوال 
وحید  11 سال پیش
0 0

این و امتحان کن ببین کار می کنه: این کد رو باید در مانیفست برنامه در اکتیویتی که می خواید با چرخش اطلاعاتش از بین نره بذارید:


android:configChanges="keyboard|keyboardHidden|orientation"

 

پاسخ به سوال 
MeY3am  11 سال پیش
+1 0

با استفاده از قطعه کد زیر در مانیفست و بکاربردن آن در اکتیویتی موردنظر میتونید از LandScape شدن اکتیویتی جلوگیری کنید

 android:configChanges="orientation|keyboardHidden"
            android:screenOrientation="portrait"

 

 

0 0
این کد فقط مانع از چرخش میشه < برای اینکه چرخش وجود داشته باشه اما برنامه بعد از چرخش همچنان اطلاعاتش رو از دست نده چکار باید کرد؟ (11 سال پیش)
0 0
کدی که بالای این پاسخ دادن کار نکرد؟! (11 سال پیش)
0 0
کدی رو که قبل این پاسخ درج کردم برای همین هست که بچرخه اما اطلاعات از بین نره. خودمم هم امتحان کردم. (11 سال پیش)
پاسخ به سوال 
Criss  11 سال پیش
+1 0

سلام دوستان

من از کدی که diligenceman گذاشته استفاده کردم  بخوبی هم جواب میده

اما مشکلی که پیش میاد اینه که با زدن کلید Back برنامه خارج میشه و به لینک های قبلی که باز شده اند ارجاع داده نمیشه

که با استفاده کردن کد های زیر همه چیز به خوبی کار میکنه <

 
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class TestingwebviewActivity extends Activity {

ArrayList<String> URLS = new ArrayList<String>();
private WebView webView1;
int backpress = 0;


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Button button1 = (Button) findViewById(R.id.button1);
EditText editText1 = (EditText) findViewById(R.id.editText1);
webView1 = (WebView) findViewById(R.id.webView1);

webView1.getSettings().setJavaScriptEnabled(true); // enable javascript

webView1.setWebViewClient(new WebViewClient() {

@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Toast.makeText(TestingwebviewActivity.this, description, Toast.LENGTH_SHORT).show();
}
});

webView1.loadUrl("http://www.kangannews.ir/index.php?switch_modes=1");
URLS.add("http://www.kangannews.ir/index.php?switch_modes=1");

button1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Log.i("IN_URL", "" + webView1.getUrl());

}
});

webView1.setWebViewClient(new WebViewClient() {

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
URLS.add(url);
Log.i("Size_1", "" + URLS.size());
for (int i = URLS.size(); i > 0; i--) {
Log.i("URL_1", "" + URLS.get(i - 1));
}
return super.shouldOverrideUrlLoading(view, url);
}
});

}


@Override
public void onBackPressed() {

if (URLS.size() >= 2) {
backpress = 0;
String url = URLS.get(URLS.size() - 2);
webView1.loadUrl(url);
URLS.remove(URLS.size() - 1);
Log.i("Size_2", "" + URLS.size());

for (int i = URLS.size(); i > 0; i--) {
Log.i("URL_2", "" + URLS.get(i - 1));
}
} else if (URLS.size() <= 1) {

Log.i("backpress", "" + backpress);

if (backpress == 0) {
Toast.makeText(TestingwebviewActivity.this, "برای خروج یکبار دیکر تلاش کنید", Toast.LENGTH_SHORT).show();
}

backpress = backpress + 1;
if (backpress > 1) {
this.finish();
}
}
}
}

 

 


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .