Ответ 1
см. эту ссылку http://developer.android.com/reference/android/widget/EditText.html
и посмотрите здесь
вы найдете свой ответ
У меня есть xml layout main.xml, как этот
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center" >
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="text"
android:textColor="#000"
android:textSize="16dp"
android:id="@+id/edtxt"
android:gravity="center|top|left"/>
</RelativeLayout>
и я объявляю это в своей деятельности следующим образом
public class MyActivity extends Activity {
private TextView txt = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
txt= (TextView)findViewById(R.id.edtxt);
}
}
но у меня нет проблем в моей деятельности. почему?
см. эту ссылку http://developer.android.com/reference/android/widget/EditText.html
и посмотрите здесь
вы найдете свой ответ
Это было бы потому, что EditText является подклассом TextView. Вы меняете EditText в TextView, который работает, потому что EditText IS TextView.
Ознакомьтесь с документами EditText: http://developer.android.com/reference/android/widget/EditText.html
И вот кое-что, чтобы вы могли узнать о наследовании, что происходит здесь: http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html
Ответ прост, это потому, что EditText
extends TextView
.