当第二个活动包含图片按钮

时间:2015-10-13 19:57:44

标签: java android android-intent

所以这就是我需要的:第一页 - >链接到第二页(带有几个图像按钮) - >链接到不同的第三页。

现在我尝试了“第一页 - >链接到第二页”阶段。

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(WORKING):

<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:当我说不工作时,我的意思是它可以顺利构建,但只是在调用意图时强制关闭Android手机。所以没有logcat条目。

2 个答案:

答案 0 :(得分:0)

您的图片可能太大而且您正在收到OOME(Out of Memory Error)

Force close after first run

减小图像的大小。 &#34;默认&#34;堆大小通常为24MB(https://code.google.com/p/android/issues/detail?id=14869),这很容易烧过。

您可能需要增加应用设备的堆大小:

How to increase heap size of an android application?

编辑:

我应该补充一点,在自动增加堆大小之前,你应该尽一切努力减少图像大小。否则,您将在以后用完堆,然后清理所有太大的图像文件。

答案 1 :(得分:0)

调整图片大小,尝试100dp x 100dp并将其放入可绘制文件夹中。不建议增加堆大小。