Android TextView 展示 @ 转移符

根据需求,要在一个TextView上展示 “@我是圈a” 。

按照Android的规范,在Strings.xml 文件中定义:<stringname="str">@我是圈a</string> 。但是这样会报错的。


那么,直接在布局里定义呢?同样报错

那么问题来了,难道就只能在代码中定义String str = “@我是圈a”; tv.setText(str);了吗? 

在代码中定义无疑是可以实现的,但是如果国际化的话,就很麻烦。

其实很简单,如果明白为什么会报错的话。我们平时是怎么在布局里给TextView或者Button设置text的?没错 android:text = "@string/str"。所以你用@,编译器以为你要@string 或者 @id @dimen 什么的呢。

所以,解决办法来了。。。

没错,转义啊!

<string name="str">\@我是圈a</string>


 <TextView

        android:id="@+id/btn"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="@string/str"

        android:padding="@dimen/activity_horizontal_margin"

        android:background="@color/btn_green_normal" />

妥妥的!



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值