簡體   English   中英

從另一個類Android Studio訪問變量

[英]Accessing variables from another class Android Studio

我是android開發的新手,我想知道如何做到這一點。 我有一個名為ListDeadlines的類,其中包含諸如

public ArrayList<String> arrayList;
public ArrayAdapter<String> adapter;
public EditText txtInput;

我希望能夠在其他類中訪問這些變量。 我已經這樣嘗試過,但是我在lst.txtInput lst.arrayList lst.adapter上收到了錯誤lst.txtInput lst.arrayList lst.adapterVariable 'lst' is accessed from within inner class, needs to be declared final. 任何人都對如何訪問另一個類中的變量有任何想法。

    ListDeadlines lst= new ListDeadlines();
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    lst.txtInput=(EditText)findViewById(R.id.txtinput);
    Button btAdd=(Button)findViewById(R.id.btnAdd);
    btAdd.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String newItem = lst.txtInput.getText().toString();
           lst.arrayList.add(newItem);
            lst.adapter.notifyDataSetChanged();
            ;
        }
    });

您要在此處執行的操作是從與lst相同作用域的匿名內部類中訪問變量lst。 匿名內部類是您的new View.OnClickListener Java中執行此操作的規則要求您將lst聲明為final以便內部類可以確定lst在最終執行時不會改變。 因此,您可以像這樣聲明您的第一個:

final ListDeadlines lst= new ListDeadlines();

或者,您可以使lst成為包含類的成員,該類包含當前定義的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM