res/layout/activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:id="@+id/show_TextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<Button
android:id="@+id/click_Button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/click" />
</LinearLayout>
MainActivity.java
package com.eric.widget;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// android.app.Activity.onCreate()
setContentView(R.layout.activity_main);
// android.app.Activity.setContentView()
final TextView show = (TextView) findViewById(R.id.show_TextView);
Button press = (Button) findViewById(R.id.click_Button);
press.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
setTitle("This is Title");
// android.app.Activity.setTitle()
show.setText("哈哈,按钮被Click!");
// android.widget.TextView.setText()
};
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
结果:
---------------------------------------------------------------------------------------------------------------------------
android.widget.TextView.setTexr():
final void setText(int resid)
final void setText(char[] text, int start, int len)
final void setText(int resid, TextView.BufferType type)
final void setText(CharSequence text)
void setText(CharSequence text, TextView.BufferType type)
show.setText("哈哈,按钮被Click!");
这个 show必须是final类型的,TextView类的对象,
不然会报错:Cannot refer to a non-final variable show inside an inner class defined in a different method