我有一个带有文字的按钮,这个文字可能很大,因此它不适合按钮宽度,所以,我希望该文本在该按钮中水平动画,如果可能的话我需要在Button的特定部分进行动画处理,因为其他部分将被Button Background图像占用:
这就是问题所在:
我想申请的解决方案:
这就是我尝试过的但是没有用的东西:
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center"
android:adjustViewBounds="true"
android:layout_margin="3dp"
android:gravity="left"
android:background="@drawable/bg"
android:textAlignment="center"
android:text="Text Here Is Large"
android:scrollHorizontally="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:lines="1"
android:textSize="14sp"
android:textColor="@android:color/white"
android:paddingBottom="5dp"
android:paddingLeft="3dp"
android:paddingRight="3dp"
android:paddingTop="5dp"
android:clickable="true"
android:tag="tag1" />
答案 0 :(得分:0)
添加以下行应该使选框效果起作用:
android:singleLine="true"
答案 1 :(得分:0)
如果某个按钮具有焦点,则会运行选框。
重要:强>
android:singleLine=”true”
android:ellipsize=”marquee”
可选强>
android:marqueeRepeatLimit=”1″
XML中的:
<Button
android:layout_width="150dip"
android:layout_height="wrap_content"
android:text="My button with a long text for marquee as a example source code"
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="1"/>
答案 2 :(得分:0)
好吧,我通过将带有自定义TextView的Button放在FrameLayout中来解决它,这个自定义TextView来自Here,以下是我如何制作它:
<FrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_margin="3dp"
android:layout_weight="1" >
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:background="@drawable/some_image"
android:clickable="true"
android:tag="button1_tag" />
<com.example.ScrollingTextView
android:id="@+id/button1_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:lines="1"
android:marqueeRepeatLimit="marquee_forever"
android:paddingBottom="5dp"
android:paddingLeft="2dp"
android:paddingRight="26dp"
android:paddingTop="3dp"
android:singleLine="true"
android:text="zone1"
android:textColor="@android:color/white"
android:textSize="14sp" />
</FrameLayout>