首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >变量在内部类中被访问。需要声明为最终版本

变量在内部类中被访问。需要声明为最终版本
EN

Stack Overflow用户
提问于 2013-01-20 23:04:33
回答 6查看 215.1K关注 0票数 133

我在我的onClick中得到了一个编译错误。

这是代码。

代码语言:javascript
复制
public class fieldsActivity extends Activity {

Button addSiteButton;
Button cancelButton;
Button signInButton;


/**
 * Called when the activity is first created.
 */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // to create a custom title bar for activity window
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

    setContentView(R.layout.fields);
    // use custom layout title bar
    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.topbar);

    Pager adapter = new Pager();
    ViewPager mPager = (ViewPager) findViewById(R.id.fieldspager);
    mPager.setAdapter(adapter);
    mPager.setCurrentItem(1);



    addSiteButton = (Button) findViewById(R.id.addSiteButton);
    addSiteButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
           mPager.setCurrentItem(2, true); //Compilation error happens here.
        }


    });


    cancelButton = (Button) findViewById(R.id.cancel_button);
    signInButton = (Button) findViewById(R.id.sign_in_button);

}
EN

回答 6

Stack Overflow用户

发布于 2015-04-25 01:15:29

如果您不想让它成为最终变量,您可以始终将其设置为全局变量。

票数 146
EN

Stack Overflow用户

发布于 2016-02-05 01:39:41

您可以将变量声明为final,或者使其成为实例(或全局)变量。如果你声明它是最终的,你将不能在以后改变它。

在方法中定义并由匿名内部类访问的任何变量都必须是final。否则,您可以在内部类中使用该变量,而不知道如果该变量在内部类中更改,然后在封闭范围中使用它,则在内部类中所做的更改不会持久保留在封闭范围中。基本上,在内部类中发生的事情停留在内部类中。

我写了一个更多的in-depth explanation here。它还解释了为什么实例和全局变量不需要声明为final。

票数 77
EN

Stack Overflow用户

发布于 2013-01-20 23:05:36

错误说明了一切,请更改:

代码语言:javascript
复制
ViewPager mPager = (ViewPager) findViewById(R.id.fieldspager);

代码语言:javascript
复制
final ViewPager mPager = (ViewPager) findViewById(R.id.fieldspager);
票数 48
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14425826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档