2016-04-18 28 views
2

Hallo, ich bin neu in der Programmierung. Ich möchte Zugriff auf Arraylist außerhalb von onCreate, aber ich bekomme Fehler. Im Folgenden ist Code.Zugriff auf Arraylist außerhalb des Oncreate

public class WelcomeOnFootActivity extends AppCompatActivity { 
    ImageButton next; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_welcome_on_foot); 
     Bundle bundle=getIntent().getExtra; 
     List<UserDate> data= new ArrayList(); 
     data.add((UserData)bundle.get("data")); 
     next=(ImageButton)findViewById(R.id.next); 

     next.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       handle(); 
      } 
     }); 
    } 
private void handle(){ 
     String info=data.getUserInfo;// here i get error 
} 
} 
+2

Sie haben gerade diese Liste erklären Out Seite des onCreate() -Methode –

+0

Wissen Sie, über 'private',' protected', 'public' oder ** Umfang der Variablen **? –

+0

Entschuldigung, ich bin neu in der Programmierung. arpit patel dank seiner jetzt zugänglichen – Buut

Antwort

0
public class WelcomeOnFootActivity extends AppCompatActivity { 
    ImageButton next; 
List<UserDate> data; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_welcome_on_foot); 
     Bundle bundle=getIntent().getExtra; 
     data= new ArrayList(); 
     data.add((UserData)bundle.get("data")); 
     next=(ImageButton)findViewById(R.id.next); 

     next.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       handle(); 
      } 
     }); 
    } 
private void handle(){ 
     String info=data.getUserInfo;// here i get error 
} 
} 
1

erklären Sie einfach die Liste global auf Klassenebene. In Ihrem Fall vor OnCreate.

List<UserDate> data= new ArrayList(); 
[email protected] 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_welcome_on_foot); 
    Bundle bundle=getIntent().getExtra; 
    data.add((UserData)bundle.get("data")); 
    next=(ImageButton)findViewById(R.id.next); 

    next.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      handle(); 
     } 
    }); 


    } 
    private void handle(){ 
     String info=data.getUserInfo; 
} 

Ich hoffe, es wird helfen.

0
public class WelcomeOnFootActivity extends AppCompatActivity { 
    ImageButton next; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_welcome_on_foot); 
     Bundle bundle=getIntent().getExtra; 
     final List<UserDate> data= new ArrayList(); 
     data.add((UserData)bundle.get("data")); 
     next=(ImageButton)findViewById(R.id.next); 

     next.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       handle(data); 
      } 
     }); 
    } 
private void handle(List<UserDate> listUD){ 
     String info=listUD.getUserInfo;// here i get error 
} 
} 
Verwandte Themen