在我的带有选项卡式活动的应用程序中,我向textView和logcat发送了一条简单的消息(消息指示我选择了哪个选项卡)。
但是,textView显示正确的字符串,但logcat显示不同的字符串。
重现此问题的步骤非常简单:
启动新的Android Studio项目(我的Android Studio版本:1.5.1)
提供任何应用程序名称(例如MyApplication)
仅保留"手机和平板电脑"选择
选择"选项卡式活动"
选择导航样式"操作栏标签(带有查看寻呼机)"
点击完成
这将生成并构建项目。如果我们运行这个应用程序,它将显示字符串" Hello World from section:1"在第一个标签上," Hello World from section:2"在第二部分" Hello World来自部分:3"在第三个标签上。
现在,进入MainActivity.java
并在方法onCreateView
(class PlaceholderFragment
)的正下方(将字符串发送到textView),
textView.setText(getString(R.string.section_format, getArguments().getInt(ARG_SECTION_NUMBER)));
添加此行
Log.i("onCreateView", "From tab number: " + getArguments().getInt(ARG_SECTION_NUMBER));
预期行为:
textView和logcat都应该显示与我们点击标签相同的消息。
实际行为:
textView显示正确的字符串。但是在logcat中,显示的选项卡号不正确,因此与textView输出不一致。
这确实是奇怪的,所有的高度都是,而不是当我尝试自己形成字符串并将其传递给textView和LogCat时
String strMessage = "Msg from tab number: " + getArguments().getInt(ARG_SECTION_NUMBER);
textView.setText (strMessage);
Log.i("onCreateView", strMessage);
它仍然具有SAME行为,即在textView中为相关选项卡显示正确的字符串,但Logcat显示完全不同的选项卡号。我发送的字符串相同,但只有数字更改???