0

在 Android 中,是否有一种更优雅的方式来检索内部类中的应用程序上下文,而不是将上下文作为参数传递?

public class MainActivity extends Activity {

    class SeekBarChangeListener implements SeekBar.OnSeekBarChangeListener
        {
            private Context context;
            private TextView distanceTextView;

            public SeekBarChangeListener(Context context, TextView distanceTextView) {
                this.context = context;
                this.distanceTextView = distanceTextView;
            }
    }

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

    } 
}
4

2 回答 2

1

将其视为 Activity 的内部类,您可以使用:

this.context = MainActivity.this.getApplicationContext();
于 2013-02-14T12:46:26.367 回答
1

从内部类调用MainActivity.this,它将为您提供 Activity 上下文对象。

除非你真的需要它,否则你不应该使用applicationContextie 调用getApplicationContext(),但从你的示例代码来看,Activity context应该足够了

于 2013-02-14T12:46:26.100 回答