如何更新TextView';Android中的文本是什么?

如何更新TextView';Android中的文本是什么?,android,android-activity,textview,listener,Android,Android Activity,Textview,Listener,我在Android中有一个视图,它有一个存储x和y值的onTouchEvent。在我的活动中,我有两个文本视图,我最初将其设置为0,但希望在每次单击视图时更新它们 有人能解释一下怎么做吗 编辑 “我的活动”显示3个不同的视图,其中一个视图有一个onTouchEvent,用于查看单击时的x和y位置 public class MyActivity extend Activity { //LinearLayouts created to hold the Views @Overri

我在Android中有一个视图,它有一个存储x和y值的onTouchEvent。在我的活动中,我有两个文本视图,我最初将其设置为0,但希望在每次单击视图时更新它们

有人能解释一下怎么做吗

编辑

“我的活动”显示3个不同的视图,其中一个视图有一个onTouchEvent,用于查看单击时的x和y位置

public class MyActivity extend Activity {
    //LinearLayouts created to hold the Views


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //add buttons 
        for(Button b : myButtons) {
            buttonLayout.addView(b);
        }

        clickLayout.addView(clickView);    //ClickView is where I use the onTouchEvent and want to get the values from

        for(TextView tv : myTextViews) {
            //This is where I would like to set the text
            //It needs to update every time the ClickView's onTouchEvent happens
            textLayout.addView(tv);
        }
    }
}
如果我的ClickView源是必要的,请告诉我,我会把它扔到那里。然而,它只得到X和Y

Dan S提到的选项(传递文本视图)是一个选项,但是我希望我的活动能够找到ClickView的onTouchEvent


如果没有其他方法可以替代上述方法,我将继续并将其标记为已解决,因为上述选项确实有效,只是使我使用它的方式稍微复杂一些。

在onTouchEvent中使用此伪代码

textViewX.setText(String.valueOf(motionEvent.getX()));
textViewY.setText(String.valueOf(motionEvent.getY()));

做如下的事情

public class MyActivity extends Activity
    implements View.OnTouchListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        ...

        // Set clickView's OnTouchListener to be handled
        // by the onTouch(...) method of this Activity
        clickView.setOnTouchListener(this);
    }

    @Override
    public onTouch(View v, MotionEvent event) {
        // The View parameter v will be the View that
        // was touched if you have more than one to handle
    }
}

感谢您的回复,但这正是我提问的原因,TextView是在活动中创建的,而不是在OnTouchEvent所在的视图中创建的。我应该在该视图中创建文本视图并将其传递给活动吗?只需在活动中使用onTouchEvent,或者您可以将文本视图传递给自定义可触摸小部件。@StartingGroovy:您可以尝试Dan的建议,但可以使用视图的
getContext()
方法并将其强制转换为活动类,例如((MyActivity)getContext()).textViewX-TextViews必须是
公共的
@MisterSquonk是否可以从活动中执行此操作?我想我是在问,我是否能够从视图中看到onTouch是否发生过,如果发生过,是否能够抓住它的价值?我之所以避免你提到的方式,是因为我的文本视图不一定会保持不变,在任何给定的时间都会有2-6个time@Dan我不知道你在活动中使用onTouchEvent是什么意思;您是否希望我在活动中将onTouchEvent代码从视图移动到onTouchEvent?我将编辑我的主要帖子来解释更多,因为我太简短了,所以你建议转到丹提到的内容?是的,但你似乎对他提出的建议和如何做有些困惑,我想我应该给你举个例子。谢谢你举个例子,非常感谢。既然Dan之前提到过,我会继续把他标记为正确的,但也会给你投票,因为你的每一条评论/帖子都很有帮助。如果我有任何问题,我会留下另一个评论。谢谢你抽出时间来,我可以帮你,你接受丹的回答没问题。谢谢你的投票,祝你好运。