为什么我的Horizo​​ntalScrollView垂直滚动?

时间:2015-05-29 23:23:58

标签: android layout

我在TextView中有HorizontalScrollView,我希望文字可滚动,但水平。我不知道为什么,但这个textview只能在垂直方向滚动

     <HorizontalScrollView
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       >
    <TextView
        android:gravity="center_vertical"
        android:id="@+id/equation"
        android:layout_width="match_parent"
        android:layout_height="90dp"
        android:textSize="35sp"
        android:textColor="#000"
        android:text="Empty"
        android:layout_marginLeft="12dp"/>

   </HorizontalScrollView>

感谢您的回答。

2 个答案:

答案 0 :(得分:1)

好的,我已经解决了。问题是我的HorizontalScrollView位于LinearLayout vertical方向。因此,我创建了具有LinearLayout方向的新horizontal,并以LinearLayout方向放入vertical。 这对我有用。

答案 1 :(得分:0)

我已经测试了你的代码,它似乎对我来说很好。必须有一些其他问题。你还有什么 xml代码 ?您是否正在使用 Java代码 中的 TextView 水平滚动视图进行任何操作?我理解我应该在评论中提出这些问题,但我是Stack的新手并且我没有足够的声誉来评论:(

我建议您尝试以下代码:

爪哇

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView tv = (TextView) findViewById(R.id.equation);
        tv.setText("Whatever my text is");

    }

XML

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <HorizontalScrollView
       android:layout_width="fill_parent"
       android:layout_height="wrap_content" >

    <TextView
        android:gravity="center_vertical"
        android:id="@+id/equation"
        android:layout_width="match_parent"
        android:layout_height="90dp"
        android:textSize="30sp"
        android:textColor="#000"
        android:text="myText"
        android:layout_marginLeft="12dp" />

   </HorizontalScrollView>
</RelativeLayout>

另外,我根本不相信水平滚动视图可以垂直滚动。但值得注意的是, TextView 具有默认的垂直滚动功能,这可能就是您所看到的。如果您愿意,可以将其放在 Java代码 中进行测试:

tv.setEnabled(false);