你应该在这里是一个包含布局TextView
和您的MyView
,然后在您的活动中,找到您的自定义视图并传递您的用户数据。您的MyView
可以在其onDraw()
期间使用。也许是这样的:
res/layout/main.xml
:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="veritcal">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello World" />
<my.package.MyView
android:id="@+id/myview"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
src/my/package/MyView.java
:
public class MyView extends View {
UserData mUserData = null;
public void setUserData(userData) {
mUserData = userData;
}
@Override
protected void onDraw(Canvas canvas) {
performCustomDrawingWithUserData(mUserData);
super.onDraw(canvas);
}
}
src/my/package/MyActivity.java
:
public class MyActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// pass the user data into myview here.
MyView myView = (MyView) findViewById(R.id.myview);
myView.setUserData(userData);
}
}