6

ここで見つかったソリューションの1つを実装しようとしています。

私の問題は、サブクラスを正しく実装して使用しているかどうかわからないことです。ここで WebView をサブクラス化しています。

public class myWebView extends WebView{

  public myWebView(Context context) {
    super(context);
    // TODO Auto-generated constructor stub
}

  @Override
protected void onSizeChanged(int w, int h, int ow, int oh) {
    // TODO Auto-generated method stub

      scrollTo(xScroll - (widthScroll/2), yScroll - (heightScroll/2));


    super.onSizeChanged(w, h, ow, oh);
}

   }}

非公開にする必要がありますが、今は忘れてください。ビュー階層に内部 webview を持つアクティビティの 1 つの内部にコードがあります。そのアクティビティの onCreate メソッドの外。

onCreate メソッド内には、次のものがあります。myWebView mapImage = (myWebView) findViewById(R.id.mapcroppic);

これにより、その呼び出しに対して ClassCastException が発生します。(xml レイアウト ファイルを使用する必要があります<myWebView>か?使用できますか?)これを正しい方法で使用するにはどうすればよいですか?

4

1 に答える 1

9

(xml レイアウト ファイルを使用する必要があります<myWebView>か?使用できますか?)これを正しい方法で使用するにはどうすればよいですか?

はい:

<your.package.name.myWebView
    android:layout_with="blah"/>

まあ、それmyWebViewは public クラスの場合に機能します。内側の場合:

<view class="your.package.name.myWebView.YourActivity$myWebView" />
于 2011-01-19T02:08:16.057 に答える