android - Android 默认字符串资源:为什么 android.R.string.yes 越来越好
问题描述
我正在尝试从 Android 的字符串资源中显示默认字符串。
我的代码片段:
new AlertDialog.Builder(CartProductListActivity.this)
.setTitle("Are you sure?")
.setMessage("Are you sure you want to delete this item from cart?")
.setPositiveButton(getString(android.R.string.yes), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
})
.setNegativeButton(getString(android.R.string.no), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).show();
在上面的代码中,我使用了android.R.string.yes
andandroid.R.string.no
分别返回OK和Cancel。
CTRL我通过+点击显示默认的string.xml文件,yes
它有一个相同的字符串(foryes
和ok
),如下所示:
<!-- Preference framework strings. -->
<string name="ok">OK</string>
<!-- Preference framework strings. -->
<string name="cancel">Cancel</string>
<!-- Preference framework strings. -->
<string name="yes">OK</string>
<!-- Preference framework strings. -->
<string name="no">Cancel</string>
为什么有两个同名的资源。用户感到困惑yes
?它是Android默认资源的错误吗?
为什么
android.R.string.yes
没有 value asYes
?为什么
android.R.string.no
没有价值 asNo
?
注意:我看到有android.R.string.yes => YES但为什么它现在改变了?
解决方案
推荐阅读
- linux - QEMU 中没有 buildroot 登录
- jquery - 当用户点击提交时,没有显示成功消息(应用到时事通讯)
- vega-lite - 有没有办法在绘图和 X 轴之间添加换行符(vega-lite)
- spring-boot - 将tomcat切换到Undertow
- python - 为python图设置索引值
- python - Keras 进度验证准确性未正确显示
- javascript - Jest.js 和 Create-react-app:运行测试时出现“语法错误:无法在模块外使用导入语句”
- node.js - datepicker selenium javascipt 使用
- python - Mathplotlib pandas-绘制平均线到散点图?
- reactjs - 使用 React Hook 客户端测试 Apollo 查询