ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • web view 사용방법
    program_language 및 궁금한것/Android Studio 2019. 2. 24. 13:29

    manifest에 internet권한 꼭주기.

    안그럼화면안뜸~~



    package com.example.ccc;
    import android.annotation.TargetApi;
    import android.os.Build;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.webkit.WebResourceRequest;
    import android.webkit.WebSettings;
    import android.webkit.WebView;
    import android.webkit.WebViewClient;
    import android.widget.Button;
    import android.widget.EditText;
    public class MainActivity extends AppCompatActivity {
    EditText et_url;
    Button btn_go;
    WebView webView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    et_url=findViewById(R.id.et_url);
    btn_go=findViewById(R.id.btn_go);
    webView=findViewById(R.id.webview);
    webView.setWebViewClient(new MyBrowser());
    WebSettings set=webView.getSettings();
    set.setJavaScriptEnabled(true);
    set.setBuiltInZoomControls(true);
    //버튼이벤트 부여
    btn_go.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    // et_url의 url로 webview를이동시켜라
    String url=et_url.getText().toString();
    webView.loadUrl(url);
    }
    });
    }
    private class MyBrowser extends WebViewClient{
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
    view.loadUrl(url);
    return true;
    }
    }
    @TargetApi(Build.VERSION_CODES.N)
    private class MyBrowser2 extends WebViewClient{
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
    String url=request.getUrl().toString();
    return super.shouldOverrideUrlLoading(view, request);
    }
    }
    }

    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=".MainActivity">
    <RelativeLayout
    android:id="@+id/top_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
    android:id="@+id/et_url"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@id/btn_go"
    android:text="http://www.google.co.kr" />
    <Button
    android:id="@+id/btn_go"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:text="GO" />
    </RelativeLayout>
    <RelativeLayout
    android:id="@+id/middle_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/top_layout">
    <WebView
    android:id="@+id/webview"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    </WebView>
    </RelativeLayout>
    <RelativeLayout
    android:id="@+id/bottom_layout"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true">
    <Button
    android:id="@+id/btn_back"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="back" />
    <Button
    android:id="@+id/btn_forward"
    android:layout_toRightOf="@id/btn_back"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="forward" />
    </RelativeLayout>
    </RelativeLayout>


    반응형

    'program_language 및 궁금한것 > Android Studio' 카테고리의 다른 글

    상단 메뉴 만들기  (0) 2019.03.09
    헷갈렸던 list아이템 클릭 확실히 알기  (0) 2019.02.24
    Firebase란?  (0) 2018.12.09
    안드로이드 Error while Installing APKs  (0) 2018.10.11
    안드로이드  (0) 2018.09.08

    댓글

Designed by Tistory.