0

我如何隐藏文本字段的上下文并在单击按钮时显示它我不想隐藏整个文本文件只是我在其中编写的上下文并在单击按钮时显示 ot 这是一个小代码*

  package com.example.nonachan;

    import android.R.string;
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.ImageButton;
    import android.widget.TextView;

    public class MainActivity extends Activity {

    char a;
    char b;
    char c; 
    int i = 0; 
    char buf;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            final EditText t =(EditText)findViewById(R.id.t1);  
                 ImageButton n = (ImageButton)findViewById(R.id.b1);            
                n.setOnClickListener(new View.OnClickListener() {       
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub

                        a = 'a';
                       t.setText(t.getText().toString() + a);   
                    //   t.setVisibility(View.INVISIBLE);

                    }       

                });

                ImageButton a = (ImageButton)findViewById(R.id.b2);
                a.setOnClickListener(new View.OnClickListener() {     
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub

                         b = 'b' ;
                         t.setText(t.getText().toString() + b);

                        // t.setVisibility(View.INVISIBLE);
                         i++; 

                    }
                });

                ImageButton m = (ImageButton)findViewById(R.id.b4);
                m.setOnClickListener(new View.OnClickListener() {     
                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub

                         c = 'c' ;
                         t.setText(t.getText().toString() + c);

                         //t.setVisibility(View.INVISIBLE);
                         i++; 

                    }
                });

                Button l = (Button)findViewById(R.id.b3);
                l.setOnClickListener(new View.OnClickListener() {

                    @Override
                    public void onClick(View arg0) {
                        // TODO Auto-generated method stub      
                    //  t.setVisibility(View.VISIBLE);
                    }

                });

        }

        @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;
        }

    }
4

2 回答 2

1

假设您在问题中将内容拼错为上下文(看起来很可能)

而不是试图隐藏 的内容EditText,只需将其保存到变量并将 的文本设置EditText为空即可。然后在您的按钮中单击只需将文本设置回本地变量中的内容

例如

String hiddenText = null;

EditText text = (EditText)findViewById(R.id.t1);

ImageButton hide = (ImageButton)findViewById(R.id.b1); 
btn.setOnClickListener(new View.OnClickListener() {       
    @Override
    public void onClick(View arg0) {
        // save and hide
        hiddenText = text.getText();
        text.setText("");
    }       
});

ImageButton unhide = (ImageButton)findViewById(R.id.b2); 
btn.setOnClickListener(new View.OnClickListener() {       
    @Override
    public void onClick(View arg0) {
        // unhide the text and 'clear' hiddenText
        if (hiddenText != null) {
            text.setText(hiddenText);
            hiddenText = null;
        }
    }       
});
于 2013-03-09T18:32:55.267 回答
0

有几种方法可以做到这一点。这取决于你想怎么做。这些只是我脑海中的一些建议,你甚至可以一起使用它们。

您可以将任何输入的文本放在单独的字符串中,然后如果不可见将 TextView 设置为显示空字符串,如果可见则将 TextView 设置为保存的字符串。

您可以使用可见性标签。

您可以将文本颜色设置为背景颜色。

您可以在可见/不可见状态下创建/删除 TextView。

如果需要,您可以将文本替换为安全输入的符号(对于 edittext 中的每个字符显示一个星号或其他内容),然后将其更改回纯文本。

有一百零一种方法,如果你搜索以前回答的问题,你会看到几种不同的方法。

于 2013-03-09T18:31:33.007 回答