2015-08-13 16 views

risposta

3
Integer intColor = -1979711488138; 
String hexColor = "#" + Integer.toHexString(intColor).substring(2); 

o

String hexColor = String.format("#%06X", (0xFFFFFF & intColor)); 
+0

Questo fa qualcosa solo perché l'intero trabocca. – headsvk

0
public class MainActivity extends Activity 
{ 

    private TextView txtViewIpLable,textView1; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     init(); 
     textView1.setTextColor(txtViewIpLable.getTextColors()); 
    } 
    private void init() 
    { 
     // TODO Auto-generated method stub 
     txtViewIpLable = (TextView) findViewById(R.id.txtViewIpLable); 
     textView1 = (TextView) findViewById(R.id.textView1); 
    } 

} 
0

Supponiamo di voler impostare il colore textView1-textView allora si può fare in questo modo:

textView.setTextColor(textView1.getCurrentTextColor()); 
0

Non è possibile inserire il numero in un int , Ottengo -1979711488 che è # 8A000000 cioè nero con 138 alfa. È possibile ottenere tutte le parti del colore in questo modo:

int color = getCurrentTextColor(); 
int a = Color.alpha(color); 
int r = Color.red(color); 
int g = Color.green(color); 
int b = Color.blue(color); 

E 'davvero strano perché il colore del testo di default non è un colore solido, ma piuttosto nero con un valore di alfa come che è più costoso per il sistema.