0

RGB を HEX に変換しようとしていますが、Hex 値を保持する EditText が表示されません0

これは私のコードです:

     etHexVal = (EditText) findViewById(R.id.etHex);
     if (etHexVal.length() == 6) { //has 000000

     }
     if (etHexVal.length() < 6) { //anything else
         Toast.makeText(getApplicationContext(), "Please enter SIX characters/numbers combination", 2000).show();
     }
     etHexVal.addTextChangedListener(new TextWatcher() {
         public void afterTextChanged(Editable s) {
             String filtered_str = s.toString();
             if (filtered_str.matches(".*[^A-F^0-9].*")) {
                 filtered_str = filtered_str.replaceAll("[^A-F^0-9]", "");
                 s.clear();
                 s.append(filtered_str);
                 Toast.makeText(getApplicationContext(), "Only A-F and 0-9 is allowed", 2000).show();
             }
         }
         public void beforeTextChanged(CharSequence s, int start, int count, int after) {}

         public void onTextChanged(CharSequence s, int start, int before, int count) {

         }
     });
private int getColorFromSeekbars()
{
    return Color.argb(255, redSeek.getProgress(), greenSeek.getProgress(), blueSeek.getProgress());
}
private String displayHexVal() {
    String k = "" + redSeek.getProgress() + greenSeek.getProgress() + blueSeek.getProgress() + "";
    Toast.makeText(getApplicationContext(), k, 2000).show();
    String strColor = String.format("#%06X", 0xFFFFFF & Integer.valueOf(k));
    return strColor;
}

0000923 つのシークバーがあり、RED シークバーが 0、GREEN シークバーが 0、BLUE シークバーが 146の場合、編集テキストに表示したいのですが、表示されるのetHexVal00009. 赤が 0、緑が 85、青が 146 の場合etHexVal、#005592 ではなく 014C9 が表示されます。ここで何がうまくいかないのですか?

4

1 に答える 1