Horizo​​ntalScrollView不适用于按钮

时间:2019-06-13 18:02:21

标签: c# xamarin.forms xamarin.android

由于某些原因,当我开始向其中添加按钮时,收到错误消息。

我在网络上发现有人更改了android版本,这对他有所帮助,我将android版本从25更改为19,但这对我没有帮助。

<HorizontalScrollView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:minWidth="25px"
    android:minHeight="25px">
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="1"
    android:id="@+id/button1" />
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="2"
    android:id="@+id/button2" />
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="3"
    android:id="@+id/button3" />
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="4"
    android:id="@+id/button4" />
</HorizontalScrollView>

需要显示按钮,但出现错误

启用了间接渲染 网桥[resources.resolve]无法解析资源@ string / abc_action_bar_home_description 无法处理消息加载 mono.android.DesignerException:java.lang.IllegalStateException     在mono.android.DesignerException.fromThrowable(DesignerException.java:54)     在mono.android.DesignerSession.checkRenderResultForError(DesignerSession.java:215)     在mono.android.DesignerSession.load(DesignerSession.java:302)     在mono.android.DesignerSession.processMessage(DesignerSession.java:665)     在mono.android.MessageListener.executeMessage(MessageListener.java:88)     在mono.android.MessageListener $ Runner.run(MessageListener.java:44)     在java.lang.Thread.run(Thread.java:748) 原因:java.lang.IllegalStateException:Horizo​​ntalScrollView只能托管一个直接子级     在android.widget.Horizo​​ntalScrollView.addView(Horizo​​ntalScrollView.java:251)     在android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:867)     在android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)     在android.view.LayoutInflater.rInflate(LayoutInflater.java:837)     在android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)     在android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:866)     在android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)     在android.view.LayoutInflater.rInflate(LayoutInflater.java:837)     在android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)     在android.view.LayoutInflater.inflate(LayoutInflater.java:515)     在android.view.LayoutInflater.inflate(LayoutInflater.java:394)     在com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:327)     在com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:386)     在com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:270)     在mono.android.DesignerSession.load(DesignerSession.java:289)

1 个答案:

答案 0 :(得分:1)

我们可以看到错误日志:java.lang.IllegalStateException: HorizontalScrollView can host only one direct child,因此您可以添加一个容器来包装这些按钮,例如LinearLayout,如下所示:

<HorizontalScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    android:minWidth="25px"
    android:minHeight="25px">
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1"
            android:id="@+id/button1" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="2"
            android:id="@+id/button2" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="3"
            android:id="@+id/button3" />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="4"
            android:id="@+id/button4" />

    </LinearLayout>
</HorizontalScrollView>

效果是:enter image description here