2017-04-11 82 views
1

我下面一本书叫头第一个Android开发 脑友好的向导到黎明格里菲斯,戴维·格里菲思的方针。 问题是,我完全复制了本书建议的代码,但它不起作用。 我已经尝试代码的图书网站复制https://github.com/dogriffiths/HeadFirstAndroid/tree/master/chapter06/Starbuzz 但它仍然无法正常工作的Android无法解析符号进口

这是代码的形式DrinkActivity.java:

package com.hfad.starbuzz; 

import android.app.Activity; 
import android.os.Bundle; 
import android.widget.ImageView; 
import android.widget.TextView; 

public class DrinkActivity extends Activity { 

    public static final String EXTRA_DRINKNO = "drinkNo"; 

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

    int drinkNo= (Integer)getIntent().getExtras().get(EXTRA_DRINKNO); 
    Drink drink = Drink.drinks[drinkNo]; 

    ImageView photo = (ImageView)findViewById(R.id.photo); 
    photo.setImageResource(drink.getImageResourceID()); 
    photo.setContentDescription(drink.getName()); 

    TextView name=(TextView)findViewById(R.id.name); 
    name.setText(drink.getName()); 

    TextView description=(TextView)findViewById(R.id.description); 
    description.setText(drink.getDescription()); 
} 

的方法不能解决符号的方法

这样的方法是在另一个类中,如下:

package com.hfad.starbuzz; 

public class Drink { 
private String name; 
private String description; 
private int imageResourceId; 

public static final Drink[] drinks = { 
     new Drink("Latte", "A couple of espresso shots with steamed milk" , R.drawable.latte), 
     new Drink("Cappuccino", "Espresso, hot milk, and a steamed milk foam", R.drawable.cappuccino), 
     new Drink("Filter", "Highest quality beans roasted and brewed fresh", R.drawable.filter) 
}; 

private Drink(String name, String description, int imageResourceId) { 
    this.name= name; 
    this.description= description; 
    this.imageResourceId= imageResourceId; 
} 

public String getDescription() { 
    return description; 
} 

public String getName() { 
    return name; 
} 

public int getImageResourceID() { 
    return imageResourceId; 
} 

public String toString() { 
    return this.name; 
} 
} 

和方法setContentDescriptionsetText应该在TextViewImageView我的理解。

问题是我已经输入了TextViewImageView

那么发生了什么?

谢谢

回答

0

您的代码的方法之外,将其粘贴到{}

+0

之间的onCreate()方法太感谢你了,这是一个明显的错误,但像我这样的起动机无法找到它,我会记住它。谢谢。 –

+0

你能接受答案吗? –