2015-10-13 57 views
0

所以这里是我需要:第一页 - >链接到第二页(与几个图像按钮) - >链接到不同的第三页。意图不工作时,第二个活动包含图像按钮

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

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); 
    } 
} 

它实际上是工作时,第二页没有包含的任何图像按钮。

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

+0

重新检查日志,好像你正在达到堆的极限 –

+0

它是否包含'I/dalvikvm-heap:将堆(frag case)增加到7。对于2536932字节分配,为473MB? –

+0

你使用的按钮,textview和Imagebutton相同的ID? – Ritesh

回答

0

您的图片可能是太大,您得到的OOME(内存不足错误)

Force close after first run

降低您的图像的大小。 “默认”堆大小通常是24MB(https://code.google.com/p/android/issues/detail?id=14869),这非常容易过去。

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

How to increase heap size of an android application?

编辑:

我要补充一点,你应该尽一切努力,以减少图像大小前自动增加堆大小。否则,你会在以后耗尽堆,然后有一个巨大的混乱清理所有太大的图像文件。

+0

你是对的。我的形象太大了! –

0

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

相关问题