일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 아이폰 배경화면
- 안드로이드 2.0 개발
- objective-c
- android
- Form Stuff
- sky 시리우스폰
- 구글 안드로이드
- MapView
- 하루 한마디 영어
- 스마트폰 배경화면
- 하루한마디영어
- 안드로이드 개발 2.0 강좌
- 구글안드로이드
- 안드로이드 개발 2.0
- 안드로이드2.0개발
- 안드로이드 바탕화면
- 안드로이드 배경화면
- 안드로이드개발
- 영어
- 인기있는 블로그 만들기
- 안드로이드
- 구글 안드로이드 개발
- 아이폰 바탕화면
- 안드로이드 개발 강좌
- 안드로이드폰
- 스카이 안드로이드폰 시리우스 K양 동영상
- 안드로이드 개발
- 안드로이드2.0
- SKY 시리우스
- 스카이 안드로이드폰 시리우스
- Today
- Total
moozi
WebView 이용하기 - 구글 홈페이지 띄우기 본문
WebView는 웹페이지를 보여주는, 웹브라우저와 비슷한 역할을 하는 뷰입니다.
이번 강좌 역시 안드로이드 개발자 사이트의 내용을 토대로 살펴보겠습니다.
1. 다음과 같이 프로젝트를 생성합니다.
2. AndroidManifest.xml 파일을 다음과 같이 편집합니다.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.HelloMyWeb"
android:versionCode="1"
android:versionName="1.0">
<uses-permission android:name="android.permission.INTERNET" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".HelloMyWeb"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="6" />
</manifest>
코드에서 굵은 글씨 부분이 추가되었는데, 인터넷접속을 허가하는 권한을 부여한 것입니다.
3. res -> layout -> main.xml 을 다음과 같이 편집합니다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
코드에서 굵은 글씨 부분이 WebView 가 정의된 곳입니다.
4. src -> my.HelloMyWeb -> HelloMyWeb.java 파일을 다음과 같이 편집합니다.
package my.HelloMyWeb;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class HelloMyWeb extends Activity {
WebView mWebView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true); // 웹뷰에서 자바스크립트실행가능
mWebView.loadUrl("http://www.google.com"); // 구글홈페이지 지정
mWebView.setWebViewClient(new HelloWebViewClient()); // WebViewClient 지정
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
}
코드에서
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
이부분은 뒤로가기 키를 눌렀을 때, 이전 페이지가 존재하면 전페이지로 돌아가게 해줍니다.
그리고,
private class HelloWebViewClient extends WebViewClient 에서
HelloWebViewClient 클래스는 WebViewClient 클래스를 상속받아서 만들었는데, WebViewClient 는 WebView 에서 로딩한 웹페이지의 링크를 클릭했을 때, 해당 URL을 로딩하는 데 필요합니다.
5. Ctrl + F11 로 실행합니다.
실행되어 구글홈페이지가 로딩되기까지 시간이 좀 걸립니다.
[ WebView 실행결과 - 구글홈페이지가 로딩된 모습 ]
저의 블로그 moozi.tistory.com 를 검색해 보았습니다.
[ WebView 실행결과 - moozi.tistory.com 을 검색하는 모습 ]
moozi.tistory.com 가 로딩되었습니다.
[ WebView 실행결과 - moozi.tistory.com 가 로딩된 모습 ]
'안드로이드개발강좌' 카테고리의 다른 글
그래픽 2D 1 - 안드로이드 아이콘 띄우기, 커스텀뷰 활용 (0) | 2010.03.04 |
---|---|
SDK 2.1 로 업그레이드하기 (0) | 2010.03.03 |
MapView 이용하기 5 - onTab() 사용 (4) | 2010.02.25 |
MapView 이용하기 4 - 원하는 위치 이동, 표시 (9) | 2010.02.22 |
MapView 이용하기 3 - MapView 띄우기 (19) | 2010.02.16 |