2014-05-24 2 views
0

활동에 웹보기를 표시하려고 할 때 응용 프로그램 오류가 발생합니다. R.id.webview를 얻는 대신 onCreate()에서 webview를 인스턴스화하면 작동합니다. 왜 그랬을까요?런타임에 ID로 WebView를 충돌시키는 이유는 무엇입니까?

public class DisplayMessageActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.id.webview); 

     WebView myWebView = (WebView) findViewById(R.id.webview); 
     myWebView.loadUrl("http://www.example.com");   
    } 

레이아웃 XML 파일 :

+1

내부를 볼 레이아웃이 없습니다. 'setContentView()'param을 레이아웃 파일 – codeMagic

+0

'setContentView (R.id.webview);'로 변경 하시겠습니까? 어쩌면'webview'를 포함하는 레이아웃일까요? – Onik

답변

1

이 답변에 코멘트를 켜려면 :

다음

는 웹보기를 보여주는로 활동이다
setContentView(R.id.webview); 

이 메소드에는보기 ID를 전달하지 않고 레이아웃 파일은 전달합니다. 그런 다음 레이아웃에 포함 된보기에 액세스 할 수 있습니다. findViewById(R.id.webview)
대신 레이아웃 xml 파일을 제공하십시오.

setContentView(R.layout.my_webview_layout); 

레이아웃이 무엇이든간에.

또한 향후 로깅 오류 및 예외가있는 경우 logcat 로그를 질문에 첨부해야합니다. 문제의 유형과 발생/트리거되는 코드의 위치를 ​​식별합니다. 이 작업을 수행 할 때 게시 된 코드에서 참조하는 행을 나타냅니다.

관련 문제