2016-04-17 14 views
0

In meiner Aktivität ist ein EditText, ein Toggle Button und ein Test Button. Wenn mein ToggleButton gedrückt wird, bearbeiten Sie das Text-Backgroud im roten Stil (red.xml) und wenn nicht gedrückt, stellen Sie es in GreenStlye (green.xml) ein. Aber wenn ich Test-Taste drücken Schreiben alredy mir Rot: '(Edit Text Hintergrund Ressource

bitte helft mir !!

Mein-Code ist hier:

public class MainActivity extends AppCompatActivity implements View.OnClickListener, CompoundButton.OnCheckedChangeListener { 

ToggleButton Toggle; 
EditText ettext; 
Button test; 

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

    Toggle=(ToggleButton)findViewById(R.id.tbkapcsolo); 
    Toggle.setOnCheckedChangeListener(this); 

    ettext=(EditText)findViewById(R.id.etszovegmezo); 

    test=(Button)findViewById(R.id.btnMent); 
    test.setOnClickListener(this); 

} 



@Override 
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
    if (isChecked){ 
     ettext.setBackgroundResource(R.drawable.red); 

    }else ettext.setBackgroundResource(R.drawable.green); 
} 

@Override 
public void onClick(View v) { 

    Drawable style=ettext.getBackground(); 
    Drawable green=getResources().getDrawable(R.drawable.green); 


    if(style==green){ 
     Toast.makeText(this,"GREEN",Toast.LENGTH_LONG).show(); 
    }else{ 
     Toast.makeText(this,"RED",Toast.LENGTH_LONG).show(); 

    } 
} 

} Danke für die Hilfe !!

Antwort

0

Sie haben onClickListner auch zu Button zugewiesen.Was auch immer Code in onClickListner hat, wird ausgeführt.Entfernen Sie onClickListner von der Schaltfläche oder schreiben Sie einen Code für die Schaltfläche

Hoffe, das wird Ihnen helfen

+0

On-Click-Programm Zeigen Sie mir in Pop-up "RED" oder "GRÜN" –

0

Das Problem könnte mit der Toggle und onCheckedChanged() -Methode sein. Versuchen Sie, die Option Toggle auf true oder false zu setzen, bevor Sie den onCheckdChangedListener festlegen.

Sie können dies in der xml tun, wenn Sie android tun: checked = "true" wie folgt aus:

<Switch 
    android:id="@+id/switchid" 
    android:checked="true"/> 
+0

Das Programm Hintergrund prüft Farbe, aber wenn der Hintergrund grün ist und ich auf Testknopf klicke, zeige mir nicht "Grün" .... es zeigt mir ROT –

Verwandte Themen