Android 应用自定义样式时,如何防止用户粘贴内部按钮?

Android 应用自定义样式时,如何防止用户粘贴内部按钮?,android,android-layout,android-styles,Android,Android Layout,Android Styles,我最近使用:@style/buttonStyle对style.xml中的所有按钮应用了一种样式。当我这样做时,它突然允许用户将文本粘贴到按钮本身中,完全替换按钮中的文本。当然,这并不理想,我想阻止这种情况发生 当没有应用样式时,按钮操作正常 任何long按下按钮内文本的任一侧都会显示选项,如下所示: 粘贴文本后的按钮: 这是@style/buttonStyle的代码: <style name="buttonStyle" parent="Widget.AppCompat.Button"&

我最近使用:
@style/buttonStyle
style.xml中的所有按钮应用了一种样式。当我这样做时,它突然允许用户将文本粘贴到按钮本身中,完全替换按钮中的文本。当然,这并不理想,我想阻止这种情况发生

没有应用样式时,按钮操作正常

任何long按下按钮内文本的任一侧都会显示选项,如下所示:

粘贴文本后的按钮:

这是
@style/buttonStyle
的代码:

<style name="buttonStyle" parent="Widget.AppCompat.Button">
    <item name="android:fontFamily">@font/cabin_condensed_semibold</item>
    <item name="android:textColor">@color/white</item>
    <item name="android:capitalize">characters</item>
    <item name="android:background">@drawable/button_primary</item>
</style>

最后是
@drawable/medium\u按钮\u no\u边框

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="@color/white">
<item android:id="@android:id/mask">
    <shape android:shape="rectangle">
        <solid android:color="@color/lightGrey" />
    </shape>
</item>

<item android:id="@android:id/background">
    <shape android:shape="rectangle">
        <solid android:color="@color/colorPrimary"/>
    </shape>
</item>
</ripple>


我尝试添加属性,如
false
,但这似乎没有什么区别。如果在
@style/buttonStyle
中从我的
buttonStyle
中删除父
小部件.AppCompat.Button
,则问题仍然存在。属性:
characters
使按钮文本可编辑。该属性假定“每个字符都大写”,但实际上并没有大写任何字符


我只是将其替换为:
true
。现在按钮中的文本不可编辑且大写。

@Zoe好的,我的错。@Zoe还有,你为什么一直删除我说“谢谢你的帮助。”这有什么问题吗?你可以尝试从样式中逐个删除
,以检查是哪一项造成了问题,或者如果仅应用空样式是enough@lelloman是的,一个接一个地删除
项有助于解决问题,谢谢。
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="@color/white">
<item android:id="@android:id/mask">
    <shape android:shape="rectangle">
        <solid android:color="@color/lightGrey" />
    </shape>
</item>

<item android:id="@android:id/background">
    <shape android:shape="rectangle">
        <solid android:color="@color/colorPrimary"/>
    </shape>
</item>
</ripple>