我开始编写应用程序,在启动时总是有一个文本输入,底部有一个闪烁的光标。我没有在xml文件中定义EditText,也不需要任何文本输入。 我不知道为什么它显示那部分。任何人都可以帮助我摆脱它吗?
编辑: 我添加了清单文件。
这是当前的* .xml文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="de.test.ble_benchmark.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/nodevice"
android:id="@+id/device"
android:textSize="20sp"
android:textStyle="bold"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="190dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminate="true"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="336dp"
android:layout_alignTop="@+id/console"
android:layout_centerHorizontal="true" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/console"
android:layout_alignParentLeft="true"
android:layout_marginLeft="0dp"
android:layout_alignParentTop="true"
android:layout_marginTop="144dp" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/scan"
android:id="@+id/scan"
android:textSize="25sp"
android:textStyle="bold"
android:onClick="onClick"
android:layout_gravity="center"
android:layout_marginLeft="134dp"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.tuhh.et5.tills.ble_benchmark">
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
>
<activity android:windowSoftInputMode="stateHidden" android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service android:name=".BlunoService"/> >
</application>
</manifest>
编辑:
好的,似乎还有更多。我不确定,但似乎相关.. 我尝试更改这些TextView的可见性并获取nullpointer异常。有些东西搞砸了......
我无法弄清楚。以下是生成异常的方法:
public void updateUi(){
Button scan = (Button)findViewById(R.id.scan);
ProgressBar search = (ProgressBar)findViewById(R.id.progressBar);
TextView output = (TextView)findViewById(R.id.output);
TextView deviceName = (TextView)findViewById(R.id.device);
switch (layoutState){
case 0:
// close
super.onBackPressed();
cleanup_bluno();
d("State 0");
break;
case 1:
// Start
d("State 1");
search.setVisibility(View.GONE);
deviceName.setVisibility(View.GONE);
scan.setVisibility(View.VISIBLE);
output.setVisibility(View.VISIBLE);
break;
case 2:
// Searching
d("State 2");
search.setVisibility(View.VISIBLE);
deviceName.setVisibility(View.GONE);
scan.setVisibility(View.GONE);
output.setVisibility(View.GONE);
break;
case 3:
// Device Found
d("State 3");
search.setVisibility(View.GONE);
deviceName.setVisibility(View.VISIBLE);
scan.setVisibility(View.GONE);
output.setVisibility(View.VISIBLE);
break;
default:
break;
}
}
它开始进入状态1并在设置可见性时崩溃。
答案 0 :(得分:0)
在您的活动onCreate()方法中添加以下代码行。我认为以下可能有效
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
答案 1 :(得分:0)
好的,我有点尴尬......有人告诉我要运行“无效的缓存/重启”。现在问题消失了......
很抱歉打扰并感谢您对此进行调查: - )