2013-02-21 68 views
1

对于所有这些编码内容我都是非常新的东西,而且我自己也得到了很多,但我似乎无法弄清楚这个错误。所有的帮助表示赞赏。没有可以访问DonationsActivity类型的封闭实例

“类型DonationsActivity没有外围实例是在范围访问”

package com.ganttbros.shadowui; 

import org.donations.DonationsActivity; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.content.Intent; 

public class DonateActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_donate); 

final Button donate = (Button) findViewById(R.id.donatebutton); 
    donate.setOnClickListener(new View.OnClickListener() { 
       public void onClick(View v) 
       { 
        startActivity(new Intent(DonationsActivity.this, DonationsActivity.class)); 
       } 
      }); 
     } 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.donate, menu); 
    return true; 
    } 

} 

我要告诉你,我试图实现这个库:https://github.com/dschuermann/android-donations-lib#readme 我已经设置了按钮,但我只需要让它在按下时启动“DonationsActivity”。

回答

3

使用

startActivity(new Intent(DonateActivity.this, DonationsActivity.class)); 

OR

startActivity(new Intent(v.getContext(), DonationsActivity.class)); 

代替

startActivity(new Intent(DonationsActivity.this, DonationsActivity.class)); 

DonateActivity活动开始DonationsActivity活动

+0

感谢一吨。这解决了它。别紧张!如果可以的话,我会鼓励你。 :P – Nxt3 2013-02-21 06:06:59

+0

(new Intent(v.getContext(),DonationsActivity.class))会做什么?为什么“v.getContext()”? – Nxt3 2013-02-21 06:08:42

+0

@Nate:'View.getContext()'也返回u当前视图上下文,你也可以用它来开始活动 – 2013-02-21 06:11:16

1

更改此:

startActivity(new Intent(DonationsActivity.this, DonationsActivity.class)); 

到:

startActivity(new Intent(DonateActivity.this, DonationsActivity.class)); 
+0

非常感谢!如果我有权力,我会鼓励你。 – Nxt3 2013-02-21 06:09:09

+0

@Nate:没关系。即使没有赞成,我也很高兴得到了帮助。 ;-) – 2013-02-21 06:09:50

相关问题