android将edittext输入字符串转换为等价的十六进制

pb3skfrl  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(478)

你好,我想我的应用程序允许用户输入一个数字1到16,按下一个按钮,然后有输入数字的十六进制等值显示在屏幕上作为一个土司消息,也存储在一个字节是十六进制。现在我已经准备好了,只是输入字符串到十六进制的转换有问题。有人能帮我做些转换吗??我肯定有一个简单的方法可以做到这一点??
例如,如果我输入1,它将在toast中的屏幕上显示0x31,0x31将存储在一个字节中。
谢谢
代码:

public class MainActivity extends Activity {

private static String toastMsg;
private static String input;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final Button genButton = (Button) findViewById(R.id.btnGen);
    final EditText inputText = (EditText) findViewById(R.id.etxtInput);
    final TextView outputText = (TextView) findViewById(R.id.txtOutput);        

    genButton.setOnClickListener(new OnClickListener() {

        public void onClick(View view){

            input = inputText.getText().toString();

            toastMsg = input;
            toast();
        }
    });

}

//-----TOAST---------------------------------//
public void toast() {

        Toast toast= Toast.makeText(getBaseContext(), toastMsg, Toast.LENGTH_LONG);
        toast.setGravity(Gravity.CENTER, 0, -100);
        toast.show();

    }
}
icnyk63a

icnyk63a1#

你只想改变这一行:

toastMsg = input;

对此:

toastMsg = Integer.toHexString(Integer.parseInt(input));

相关问题