[英]intent not working when second activity contained image button
所以这就是我需要的:第一页->链接到第二页(带有多个图像按钮)->链接到不同的第三页。
现在我已经尝试了“第一页->链接到第二页”阶段。
activity_main.xml:
<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">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:textSize="20sp"
android:text="This is first activity" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:text="Move to second activity" />
</RelativeLayout>
MainActivity.java:
package com.example.acer.myapplication;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
Button buttoon;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Intent move= new Intent(this, ActivityTwo.class);
buttoon=(Button) findViewById(R.id.button1);
buttoon.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
startActivity(move);
}
});
}
}
ActivityTwo.java:
package com.example.acer.myapplication;
import android.os.Bundle;
import android.app.Activity;
public class ActivityTwo extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two);
}
}
当第二页DID不包含任何图像按钮时,它实际上正在工作。
activity_two.xml(正在工作):
<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">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="92dp"
android:text="Second activity"
android:textSize="20sp" />
</RelativeLayout>
没有任何图像的按钮也正在工作:
<Button
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Second activity" />
但是当您添加图片时,它就无法正常工作。
使用带有背景图片的按钮(不工作):
<Button
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Second activity"
android:background="@drawable/image"/>
使用图像按钮(不工作):
<ImageButton
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Second activity"
android:src="@drawable/image"/>
我真的需要第二页上有图像按钮。 请告诉我我在哪里错了或者还有其他窍门。
ps:当我说不工作时,我的意思是它构建平稳,但是当调用intent时,它被强制关闭在android手机中。 因此没有logcat条目。
您的图片可能太大,并且收到OOME(内存不足错误)
减小图像的尺寸。 “默认”堆大小通常为24MB( https://code.google.com/p/android/issues/detail?id=14869 ),这真的很容易燃烧。
您可能需要为应用程序增加设备上的堆大小:
编辑:
我应该补充一点,您应该在自动增加堆大小之前尽一切努力减小图像大小。 否则,稍后您将用完堆,然后将清理所有太大的图像文件弄得一团糟。
调整图像大小,尝试100dp x 100dp并将其放入可绘制文件夹中。 不建议增加堆大小。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.