2016-07-26 10 views
-1

ich habe diesen Code: -von einem Fragment eines Toast Show - Keine geeignete Methode für Maketext

import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.Button; 
import android.widget.Toast; 
import android.widget.ToggleButton; 

public class Tab3 extends android.support.v4.app.Fragment { 
    private static final String ARG_SECTION_NUMBER = "section_number"; 
    private ToggleButton toggleButton1, toggleButton2; 
    private Button btnDisplay; 
    public void addListenerOnButton(View v) { 


     toggleButton1 = (ToggleButton) v.findViewById(R.id.toggleButton1); 
     toggleButton2 = (ToggleButton) v.findViewById(R.id.toggleButton2); 
     btnDisplay = (Button) v.findViewById(R.id.btnDisplay); 
     btnDisplay.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       StringBuffer result = new StringBuffer(); 
       result.append("toggleButton1 : ").append(
         toggleButton1.getText()); 
       result.append("\ntoggleButton2 : ").append(
         toggleButton2.getText()); 

       Toast.makeText(Tab3.this, result.toString(), 
         Toast.LENGTH_SHORT).show(); 

      } 

     }); 

    } 

    public static Tab3 newInstance(int sectionNumber) { 
     Tab3 fragment = new Tab3(); 
     Bundle args = new Bundle(); 
     args.putInt(ARG_SECTION_NUMBER, sectionNumber); 
     fragment.setArguments(args); 
     return fragment; 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View v =inflater.inflate(R.layout.tab3,container,false); 
     addListenerOnButton(v); 
     return v; 
    } 
} 

es Umschaltknopf mit einigen Meldungen in Registerkarte und ich habe unter diesem Abschnitt rote Linien: -

Toast.makeText(Tab3.this, result.toString(), 
         Toast.LENGTH_SHORT).show(); 

mit diesem Fehler: -

Error:(32, 22) error: no suitable method found for makeText(Tab3,String,int) method Toast.makeText(Context,CharSequence,int) is not applicable (argument mismatch; Tab3 cannot be converted to Context) method Toast.makeText(Context,int,int) is not applicable (argument mismatch; Tab3 cannot be converted to Context)

jemand kann mir helfen?

Antwort

1

Versuch statt Tab3.this zu verwenden, verwenden Sie diese: getActivity()

+0

es ist die Arbeit mit mir thaaanks alot – mh9

2

makeText erfordert eine Context als ersten Parameter

Tab3 a Fragment ist. A ist kein Context. Statt Tab3.this verwenden Tab3.this.getContext()

+1

Oder einfach nur 'getContext()' –

Verwandte Themen