开发者

Focus removed while typing in edit text

I have an EditText

serialText = (EditText) findViewById(R.id.pinText);

Now onclick of somebutton, I should get the focus to edit text to write something. But when I click inside of edit text to write, focus is getting removed, i.e., whatever i type does not appear in the edit text

This is the code to do that,

public void method(View v) {


arrowButton.setOnClickListener(new OnClickListener() {


@Override

public void onClick(View v) {

    serialNumber = serialText.getText().toString();

        if (serialNumber.equals("")) {
     } else {


}


} }...

Here if I don't type anything it comes to if loop without any problem, but samething is not happening for else part.

Can you please help me?

This is my full code

public void onClick(View v) {

    if (v.getId() == R.id.pinBtn) {

        arrowButton = (Button) findViewById(R.id.arrowBtn);

        serialText = (EditText) findViewById(R.id.pinText);
        serialText.setVisibility(View.VISIBLE);
        arrowButton.setVisibility(View.VISIB开发者_高级运维LE);
        //serialNumber = serialText.getText().toString();
        arrowButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                serialNumber = serialText.getText().toString();
                if (serialNumber.equals("")) {
                    Toast.makeText(getApplicationContext(),
                            "Please enter the serial number",
                            Toast.LENGTH_SHORT).show();
                }
                else {

                    isRegularSerialNumber(serialNumber);

                    String encodedserialNumber = Base64.encodeToString(
                            serialNumber.getBytes(), Base64.DEFAULT);

                    receiveSerialData(encodedserialNumber);

                    if (serialResponse.equals("Validated Successfully!")) {
                        showAudio(v);
                    } else {
                        Toast.makeText(getApplicationContext(),
                                "Invalid Serial Number", Toast.LENGTH_SHORT)
                                .show();
                    }
                }
            }
        });
    }
}

Thanks


I solved the problem finally, the problem was when we keep an edit text in the listview and when try to write inside that, keyboard pushes the listview up. So we need to add the property android:windowSoftInputMode="adjustPan" to the listview or to the activity containing the list view in the manifest file.


Instead of using serialNumber.equals(""), try replacing it with:

serialNumber.length() == 0     

or

serialNumber.matches("")


The code you posted is onClick() of arrowButton, you should post onClick() of serialText

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜