Android 使用视图翻转器浏览web视图的动画

Android 使用视图翻转器浏览web视图的动画,android,viewflipper,Android,Viewflipper,我想制作一个动画来浏览web视图,为此,我使用viewflipper,当我使用布局制作动画时,它可以工作,但使用webview时,它不工作,我需要有经验的人的帮助,以下是我的代码(我只复制出现问题的部分): 这是带有布局的代码,它运行良好: vf = (ViewFlipper) findViewById(R.id.details); LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER

我想制作一个动画来浏览web视图,为此,我使用viewflipper,当我使用布局制作动画时,它可以工作,但使用webview时,它不工作,我需要有经验的人的帮助,以下是我的代码(我只复制出现问题的部分):

这是带有布局的代码,它运行良好:

   vf = (ViewFlipper) findViewById(R.id.details);
   LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
   int layouts[] = new int[] {R.layout.layout_page1, R.layout.layout_page2, R.layout.layout_page3};

    for (int i=0; i<layouts.length; i++) {
        View vw = vi.inflate(layouts[i], null);     
        vf.addView(vw);
    }
vf=(ViewFlipper)findViewById(R.id.details);
LayoutInflater vi=(LayoutInflater)getSystemService(Context.LAYOUT\u INFLATER\u SERVICE);
int layouts[]=新int[]{R.layout.layout_page1,R.layout.layout_page2,R.layout.layout_page3};

对于(inti=0;i从同一布局xml中添加两个Web视图),视图翻转器会导致一些问题

在您给出的第一个示例中,您从单独的布局文件中扩展视图,在第二个示例中,您使用findViewById()获取视图,这意味着它们位于相同的布局xml中。问题很可能是这两个Web视图已经有了父视图

将webview放入其自己的布局并充气

LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
MyWebView[0] = (WebView)vi.inflate(R.layout.webview,null);
MyWebView[1] = (WebView)vi.inflate(R.layout.webview,null);

for (int i=0; i<2; i++) {
    vf.addView(MyWebView[i]);
}
LayoutInflater vi=(LayoutInflater)getSystemService(Context.LAYOUT\u INFLATER\u SERVICE);
MyWebView[0]=(WebView)vi.inflate(R.layout.WebView,null);
MyWebView[1]=(WebView)vi.inflate(R.layout.WebView,null);

对于(inti=0;i从同一布局xml中添加两个Web视图),视图翻转器会导致一些问题

在您给出的第一个示例中,您从单独的布局文件中扩展视图,在第二个示例中,您使用findViewById()获取视图,这意味着它们位于相同的布局xml中。问题很可能是这两个Web视图已经有了父视图

将webview放入其自己的布局并充气

LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
MyWebView[0] = (WebView)vi.inflate(R.layout.webview,null);
MyWebView[1] = (WebView)vi.inflate(R.layout.webview,null);

for (int i=0; i<2; i++) {
    vf.addView(MyWebView[i]);
}
LayoutInflater vi=(LayoutInflater)getSystemService(Context.LAYOUT\u INFLATER\u SERVICE);
MyWebView[0]=(WebView)vi.inflate(R.layout.WebView,null);
MyWebView[1]=(WebView)vi.inflate(R.layout.WebView,null);

对于(int i=0;iIs)是否存在异常?请发布堆栈跟踪。是否存在异常?请发布堆栈跟踪。您所说的“将webview放入自己的布局”是什么意思plz?在我的xml文件中,我有这样的结构:。你的意思是我应该把每个web视图放在一个单独的xml文件中吗?啊,我现在明白了。web视图已经添加到xml中的viewflipper中,你不需要用for循环添加它们。我将编辑我的答案。你是对的,当我删除“addview”时它起作用了方法。非常感谢Triggs您所说的“将webview放入自己的布局”是什么意思plz?在我的xml文件中,我有这样的结构:。你的意思是我应该把每个web视图放在一个单独的xml文件中吗?啊,我现在明白了。web视图已经添加到xml中的viewflipper中,你不需要用for循环添加它们。我将编辑我的答案。你是对的,当我删除“addview”方法时它工作了。非常感谢
for (int i=0; i<2; i++) {
    vf.addView(MyWebView[i]);
}