2011-11-10 9 views
1

hy! 同じメソッドで変数にアクセスするEclipseの奇妙な動作

は、私は自分のプロジェクトにライブラリを追加し、私は私のクラスでそれを使用したい

コード:

import com.jjoe64.graphview.*; 
import com.jjoe64.graphview.GraphView.GraphViewSeries; 
import com.jjoe64.graphview.GraphView.GraphViewData; 
import greendroid.app.GDActivity; 

public class StatisticActivity extends GDActivity { 

    GraphViewSeries exampleSeries = new GraphViewSeries(new GraphViewData[] { 
       new GraphViewData(1, 2.0d) 
       , new GraphViewData(2, 1.5d) 
       , new GraphViewData(3, 2.5d) 
       , new GraphViewData(4, 1.0d) 
    }); 

    GraphView graphView = new LineGraphView(
      this // context 
      , "GraphViewDemo"); 

    graphView.addSeries(exampleSeries); // can't access that variable 

    //LinearLayout layout = (LinearLayout) findViewById(R.id.layout); 
    //layout.addView(graphView); 
} 

私の問題は、私は変数へのアクセスを得ることができないということです。私が "graphView"をタイプするとき。私のクラスの変数がないという自動提案が何であるかを見てください。

GraphViewクラス:

http://www.sourcepod.com/dknqvl76-5923

答えて

3

第一および第三のコメントアウトされた行が不正な構文であり、それはおそらく、ここで問題です助けてください。メンバ宣言のみがクラスのトップレベルに表示されます。

graphView.addSeries(exampleSeries); 

などが唯一の方法または初期化ブロック内に表示することができます。 Eclipseは graphViewをコードのその時点の変数として認識しません。クラス名だけが有効なので、それがどのように解釈されるかです。

+0

「通常の」コードには影響しません – test123123

+3

@ test123123 Javaへようこそ。 「通常の」コードはありません。すべてが方法にあるべきです。 – corsiKa

+0

THX(私はあまりにも怠け者でした)それはストレスフルな一日でした – test123123