2013-09-22 87 views
1

我有一個內部方法和一個我想傳遞給內部方法的索引值的方法。將變量值傳遞給內部類方法

的方法:

public CharSequence encodeSmileyChars(String index_str){ 
    CharSequence cs; 

    // The value I'd like to pass... 
    int index = Integer.parseInt(index_str); 

    ImageGetter imageGetter = new ImageGetter() { 

     public Drawable getDrawable(String source) { 
                // ...here˘ 
      Drawable d = getResources().getDrawable(images[index]); 
      d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight()); 
      return d; 
     } 
    }; 

    cs = Html.fromHtml("<img src='" 
        + getResources().getDrawable(images[index]) 
        + "'/>", imageGetter, null); 
    return cs; 
} 

有人可以,請告訴我,如果這是可能的,這怎麼可能實現呢?

+3

你可以這樣做,但是你必須聲明'index'爲'final'。 –

回答

1

如果您只是在此方法內使用index,該方法可行,因爲這仍然是index存在的範圍。你只需要添加final修改器爲了這樣做。