0

我创建了一个名为“new_game.xml”的新 .xml 文件和一个名为“New_Game.java”的类, 这些不是主要活动

新游戏.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"/>               
              
    <Button android:layout_width="wrap_content"                  
        android:layout_height="wrap_content"               
        android:text="Click"                 
        android:id="@+id/button"              
        android:layout_marginTop="27dp"                
        android:layout_alignRight="@+id/editText"/>              
                
    <EditText android:layout_width="wrap_content"                 
        android:layout_height="wrap_content"                
        android:inputType="textPersonName"                
        android:ems="10"                
        android:id="@+id/editText"               
        android:layout_marginTop="16dp"               
        android:layout_below="@+id/button"             
        android:layout_marginLeft="11dp"/>         
       
    <ImageView android:layout_width="wrap_content"       
        android:layout_height="wrap_content"       
        android:id="@+id/imageView"       
        android:paddingTop="50dp"      
        android:paddingBottom="50dp"      
        android:paddingLeft="50dp"      
        android:paddingRight="50dp"      
        android:background="@drawable/ic_launcher"       
        android:layout_centerVertical="true"       
        android:layout_toLeftOf="@+id/button"/>      
</RelativeLayout>  

新游戏.java:

package com.example.logosquiz;        

import android.app.Activity;        
import android.app.ListActivity;       
import android.app.TabActivity;         
import android.os.Bundle;        
import android.view.LayoutInflater;           
import android.view.View;      
import android.widget.Button;      
import android.widget.EditText;      
import android.widget.ImageView;      
import android.widget.RelativeLayout;    

public class New_Game extends Activity {     
     
    protected void onCreate(Bundle savedInstanceState) {      
        super.onCreate(savedInstanceState);      
        setContentView(R.layout.new_game);      
        Button button1 = (Button)findViewById(R.id.button);        
        final EditText editText1 = (EditText)findViewById(R.id.editText);     

        ImageView imageView1 = (ImageView)findViewById(R.id.imageView);

        button1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                editText1.setText("Hello Android");     
            }     
        });      
    }

请解释得很好

我把 AndroidManifest.xml 这个

<activity android:name=".New_Game"> /activity>

这在 onClick 事件中

意图 myIntent = new Intent(v.getContext(), New_Game.class);

startActivityForResult(myIntent, 0);

4

2 回答 2

0

您的 XML 错误。从XML 中/的第一个中删除最后一个。RelativeLayout

<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">  

代替

<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"/>  

尽管 Eclipse 应该警告过您这一点。

于 2013-06-05T17:27:54.927 回答
0

你的代码是正确的,但是

按钮 android:layout_marginTop="27dp"

编辑文本 android:layout_marginTop="16dp"

编辑文本放置在按钮上,因此当您单击时,您单击的是 edittext 而不是按钮将 edittext marginTop 更改为 30dp 并检查

public class New_Game extends Activity {
EditText editText1;
@override
protected void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);      

    setContentView(R.layout.new_game);      


     Button button1 = (Button)findViewById(R.id.button);        

    editText1 = (EditText)findViewById(R.id.editText);     

    ImageView imageView1 = (ImageView)findViewById(R.id.imageView);     

  button1.setOnClickListener(new View.OnClickListener(){

    public void onClick(View v){     

        editText1.setText("Hello Android");     
}     
  });     

 }     
于 2013-06-05T17:41:01.437 回答