I am new to Android programming but have a little bit of experience with Java. However, I am creating an Android application and when a user clicks a button I want a different class to instantiated...
This is my MainActivity.java
private void setButtonClickListener() {
Button budgetPeriodButton = (Button)findViewById(R.id.budgetPeriodButton);
Button incomingsButton = (Button)findViewById(R.id.incomingsButton);
Button outgoingsButton = (Button)findViewById(R.id.outgoingsButton);
Button resultsButton = (Button)findViewById(R.id.resultsButton);
budgetPeriodButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
BudgetPeriod bp = new BudgetPeriod();
bp.changeUI();
}
And this is the BudgetPeriod class
import android.app.Activity;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.widget.ImageView;
public class BudgetPeriod extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_budget);
super.onCreate(savedInstanceState);
changeUI();
}
public void changeUI() {
ImageView imageView = (ImageView) findViewById(R.id.budget_icon);
Drawable newBudgetImage;
newBudgetImage = getResources().getDrawable(R.drawable.budget_period);
imageView.setImageDrawable(newBudgetImage);
}
}
If the user clicks on the button, then an error message on the emulator says "Unfortunatley, this app has had to close"
Any ideas on what I am doing wrong?
Thanks
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…