2012-11-07 2 views
0

자산 폴더의 html 파일을 사용자 지정 대화 상자에 표시하려고합니다. 그러나 오류가 발생합니다. 다음 코드를 사용 중입니다. 이 같이 대화를 호출자산 폴더의 정적 HTML 파일을 사용자 지정 대화 상자의 Webview에 표시하려고합니다.

내 사용자 정의 대화 상자 클래스

public class RobozoxDialog extends Activity{ 
Dialog my; 
public RobozoxDialog(Context theContext){ 
    my= new Dialog(theContext); 
} 
public void showRobozoxDialog(){ 
    my.show(); 
} 
public void setSource(String title,String url) { 

    WebView myWebView = (WebView) findViewById(R.id.webview_dialog); 
    myWebView.loadUrl(url); 
    my.setTitle(title); 
} 
} 

사용자 정의 대화 XML

<?xml version="1.0" encoding="utf-8"?> 
<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/webview_dialog" 
android:layout_width="match_parent" 
android:layout_height="match_parent" > 
</WebView> 

.

RobozoxDialog d = new RobozoxDialog(MainActivity.this); 
d.setSource("Test", "file:///android_asset/test.html"); 
d.showRobozoxDialog(); 

그러나 문제가 발생하여 문제를 해결할 수 없습니다. 내가 main activity xml의 webview에 html 파일을 보여줄 때 보여주고있다. 대화창 webview에 표시하려고하면 작업이 중지됩니다.

답변

1

..

LayoutInflater li = LayoutInflater.from(theContext); 
    View promptsView = li.inflate(R.layout.dialog_layout, null); 

    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
      theContext); 
    alertDialogBuilder.setTitle("Registration"); 

    alertDialogBuilder.setView(promptsView); 

    final WebView webview = (WebView) promptsView 
      .findViewById(R.id.webview_dialog); 
    webview.loadUrl("file:///android_asset/test.html"); 
    final AlertDialog alertDialog = alertDialogBuilder.create(); 

    alertDialog.show(); 
0
  1. 항상 logcat 출력을 질문에 추가하십시오. 우리는 당신이 어떤 오류를 겪고 있는지 알지 못합니다.
  2. 대화 상자에 레이아웃을 설정하지 않았습니다. 사용자 지정 대화 상자를 만드는 방법은 here을 참조하십시오.
  3. 대화 상자 대신 활동에서 WebView를 가져 오려고합니다. 시도 내가 LayoutInflater에서 코드는 다음과 같습니다 사용하여이 작업을 수행 my.findViewById(R.id.webview_dialog)
관련 문제