java - android - 让textView不可见

标签 java android ontouchlistener

当我的应用程序启动时,用户需要在实际操作开始之前触摸屏幕。我有一个 textView ,它给出了触摸屏幕的提示。

触摸屏幕后,我希望文本不可见。现在,textView 永远不会消失,并且始终位于前面。

public class MainActivity extends Activity implements OnGestureListener
{       
    public boolean touched = false;
    TextView mMyView;

    public void onTouch() 
    {
        mMyView.setVisibility(View.GONE);  
        touched = true;                 
    }

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {   
        super.onCreate(savedInstanceState);                       
        setContentView(R.layout.activity_game);
        mMyView = (TextView)findViewById(R.id.textView6);

        if(touched == true) 
        {

        }

    }
}

最佳答案

1.如果您想查看是否为true/false,请始终使用if(something),而不是编写if(something == true) code> [某物是一个 boolean 值,赋值为 true。]

2.如果您将 View xml 指向使用 android:onClick 的方法,如下所示,

<Button android:id="@+id/mybutton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Click me!"
    android:onClick="onTouch" />

。 实现 OnGestureListener 有什么意义?

如果我这样做onCreate我会初始化我的 View

View myView = findViewById(R.id.my_view);

3.如果我真的想要触摸,我会这样做

myView.setOnTouchListener(new OnTouchListener() {
    public boolean onTouch(View v, MotionEvent event) {
        // ... Respond to touch events --> tv.setVisibility(View.INVISIBLE);
        return true; // if you return false with this then the listener will not be called for the subsequent ACTION_MOVE and ACTION_UP string of events.
    }
});
  • 现在你可以看到第三个参数中有一个 MotionEvent,你可以识别 Action ACTION_DOWNACTION_MOVE ACTION_UP
  • 现在想想你曾经使用过它们吗?你脑子里有一个关于触摸的想法,所以尝试使用触摸事件..但你没有使用它们。因此,它的作用与您的情况下 onClickListner 的作用相同。如果您想要动议,请使用我给出的第三个动议。

    但是你可以简单地使用

     // view is the background layout
        myView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // Do something here --> Hide your text  tv.setVisibility(View.INVISIBLE);
            }
        });
    

    那些 View onClickListnersetOnTouchListener 您可以直接在 onCreate 中使用它们,或者将它们保留在方法中,您可以从 onCreate。为什么要保留 boolean 值?没什么大不了的

    注意,我将 myView 视为背景布局,而不是您的 textView ,背景是您单击/触摸的布局

    关于java - android - 让textView不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41313537/

    相关文章:

    Android:一起使用onTouch和onLongClick

    java - 拦截器 preHandle() 未重定向到 login.html

    java - 从文本文件中删除前 1000 行

    java - 无法使用方法从类作为参数传递 getter

    android - Android 中的样式继承

    android - 如何将 ParseObject 的 createdAt 日期获取为字符串?

    带有服务器证书的 Java Sign jar

    android - 如何从 laravel web 应用程序创建 android 应用程序?

    Java Android : onTouchListener release?

    android - 如何让布局监听器忽略其顶部的 View - android