我目前正在开发一个Android应用程序,直到现在我使用eclipse android模拟器进行测试。
今天我决定在我的手机上尝试一下(小米mi2)但是当我吃午饭时(通过USB调试)我遇到了2个问题:
我有一张背景图片,模拟器显示完美,但它没有出现在我的手机上 - 显示黑色背景。
也许这是前一个问题,LogCat显示了一些错误:
03-01 22:18:35.599: E/OpenGLRenderer(1109): Cannot generate texture from bitmap
03-01 22:18:35.629: E/SpannableStringBuilder(1109): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
活动代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="480dip"
android:layout_marginTop="10dip"
android:background="@drawable/bg">
<EditText
android:id="@+id/eu_un"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textPersonName"
android:hint="@string/enter_user_name" >
</EditText>
<EditText
android:id="@+id/eu_pw"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/eu_un"
android:ems="10"
android:hint="@string/enter_password"
android:inputType="textPassword|textPersonName" />
<Button
android:id="@+id/nu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="134dp"
android:text="@string/signup" />
<Button
android:id="@+id/eu_signin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/eu_pw"
android:layout_centerHorizontal="true"
android:text="@string/login" />
<Button
android:id="@+id/exit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/eu_signin"
android:layout_alignParentBottom="true"
android:layout_marginBottom="61dp"
android:text="@string/exit" />
</RelativeLayout>
Java代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
un = (EditText) findViewById(R.id.eu_un);
pw = (EditText) findViewById(R.id.eu_pw);
nu = (Button) findViewById(R.id.nu);
eu = (Button) findViewById(R.id.eu_signin);
exit = (Button) findViewById(R.id.exit);
ma = this;
nu.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
newUser();
}
});
答案 0 :(得分:1)
这是一个奇怪的错误。我做了一些搜索,发现一些类似的帖子,似乎暗示它与设备的键盘设置有关:
Android - SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
Nexus 7 error "SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length"
他们中的大多数都有问题中的特定电话。
SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length error whenever an editText becomes empty
如果你搜索
还有更多我知道这并没有提供你所希望的答案 - 但理想情况下它会让你朝着正确的方向前进。
答案 1 :(得分:0)
我也在genymotion API 16 +上遇到了这个模拟设备的错误。
我的问题的解决方案是用gng图像替换gif图像。
感谢http://www.pedrorainho.eu/eopenglrenderer2268-cannot-generate-texture-from-bitmap/
答案 2 :(得分:-1)
我在使用Android L版本的nexus5中遇到了同样的错误。 就我而言,我评论了两行来修复它。 ( // opt.inPurgeable = true; // opt.inInputShareable = true; ) 希望对你有用。 祝你好运!
下面是我的代码:
ImageView image = (ImageView) findViewById(R.id.imageView);
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inPreferredConfig = Bitmap.Config.RGB_565;
// opt.inPurgeable = true;
// opt.inInputShareable = true;
InputStream is = getResources().openRawResource(R.raw.error_nothing_app);
Bitmap bitmap = BitmapFactory.decodeStream(is, null, opt);
is.close();
BitmapDrawable drawable = new BitmapDrawable(getResources(), bitmap);
image.setImageDrawable(drawable);