2017-06-26 50 views
1

這是我的java文件UserAreaActivity文件。檢查此代碼並以代碼格式給出答案。 m使用最新版本的android studio。在我的android編程代碼中獲取錯誤java.lang

package com.symplycode.newloginregister; 

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.EditText; 
import android.widget.TextView; 

public class UserAreaActivity extends AppCompatActivity { 

    @Override 
     protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_user_area); 

     final EditText etUsername=(EditText) findViewById(R.id.etUsername); 
     final EditText etAge=(EditText) findViewById(R.id.etAge); 
     final TextView welcomeMessage=(TextView) findViewById(R.id.tvWelcomeMsg); 


     Bundle extras=getIntent().getExtras(); 
     String name= extras.getString("name"); 
     String username= extras.getString("username"); 
     String age= extras.getString("age"); 

     String message = name + "welcome to your user area"; 
     welcomeMessage.setText(message); 
     etUsername.setText(username); 
     etAge.setText(age); 
    } 
} 

這是xml文件

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/content" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:padding="20dp" 
    tools:context="com.symplycode.newloginregister.UserAreaActivity"> 

    <TextView 
     android:id="@+id/tvWelcomeMsg" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Welcome" 
     android:textSize="24sp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 

    <TextView 
     android:id="@+id/textView10" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_below="@+id/tvWelcomeMsg" 
     android:layout_marginTop="30dp" 
     android:paddingLeft="6dp" 
     android:text="Name" /> 

    <TextView 
     android:id="@+id/etName" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_below="@+id/textView10" 
     android:ems="10" 
     android:inputType="textPersonName" /> 

    <TextView 
     android:id="@+id/textView11" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_below="@+id/etName" 
     android:paddingLeft="6dp" 
     android:text="Age" /> 

    <TextView 
     android:id="@+id/etAge" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_below="@+id/textView11" 
     android:ems="10" 
     android:inputType="textPersonName" /> 
</RelativeLayout> 

得到錯誤在這個..我怎樣才能解決這個請你告訴我

了java.lang.RuntimeException:無法啓動活動ComponentInfo {融爲一體。 symplycode.newloginregister/com.symplycode.newloginregister.UserAreaActivity}:java.lang.ClassCastException:android.support.v7.widget.AppCompatTextView無法轉換爲android.widget.EditText

回答

1
final EditText etUsername=(EditText) findViewById(R.id.etUsername); 
     final EditText etAge=(EditText) findViewById(R.id.etAge); 

必須

final TextView etUsername=(TextView) findViewById(R.id.etName); 
     final TextView etAge=(TextView) findViewById(R.id.etAge); 

您嘗試投放的TextView窗口小部件,EditText部件。要麼改變它像我的例子或改變你的XML佈局內TextViewEditText

順便說一句,有一個id etUsername佈局內沒有看法,也許it's一個錯字,你的意思是etName?確保您使用的是正確的佈局XML ...

您使用setContentView(R.layout.activity_user_area);設置必須是其中兩個意見是內部佈局的佈局...

+0

謝謝你的回覆:)現在得到這個錯誤 –

+0

的java .lang.RuntimeException:無法啓動活動ComponentInfo {com.symplycode.newloginregister/com.symplycode.newloginregister.UserAreaActivity}:java.lang.NullPointerException:嘗試調用虛擬方法'void android.widget.TextView.setText(java.lang .CharSequence)'對空對象引用 –

+0

你確定你使用的是正確的佈局xml嗎? – Opiatefuchs