3

GestureScaleListener を使用して WebView のフォント ズームを拡大しようとしています。私の WebView は Fragment 内にあります。フラグメントで GestureScaleListener を試してもうまくいきません。私のコード:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    scaleGestureDetector = new ScaleGestureDetector(getActivity(), new simpleOnScaleGestureListener());
}

public boolean onTouchEvent(MotionEvent event) {
        Toast.makeText(getActivity(), "scaling", Toast.LENGTH_SHORT).show();
    scaleGestureDetector.onTouchEvent(event);
            return true;
}
public class simpleOnScaleGestureListener extends SimpleOnScaleGestureListener {

    @Override
    public boolean onScale(ScaleGestureDetector detector) {
        Toast.makeText(getActivity(), ""+detector.getScaleFactor(), Toast.LENGTH_SHORT).show();
        WebView wv = (WebView) getView().findViewById(R.id.chaptercontent);
        WebSettings settings = wv.getSettings();
        settings.setTextZoom((int)(settings.getTextZoom() * detector.getScaleFactor()));
        return true;
    }
}

アクティビティで同じコードを試すと、正常に動作します。フラグメントで機能させるにはどうすればよいですか?

4

0 に答える 0