2011-09-10 10 views
0

こんにちは私は、アンドロイドOSプログラミングの初心者です。私は問題を抱えていました。タイマーに基づいて、どのように動的な背景を行うのかわかりません。(10秒ごとに背景が変わります)いくつかのコードを持っていますが、それは誤りを思い付く、ここではサンプルです:タイマーに基づいたダイナミックな背景(線形レイアウト)、方法?

private static final long GET_DATA_INTERVAL = 10000; 
int images[] = {R.drawable.smothie1,R.drawable.omletherb1}; 
int index = 0; 
ImageView img; 
Handler hand = new Handler(); 

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    this.setContentView(R.layout.main); 
    LinearLayout layout= (LinearLayout)findViewById(R.id.LinearView1); 
    hand.postDelayed(run, GET_DATA_INTERVAL); 
} 

Runnable run = new Runnable() { 
    public void run() { 
     layout.setBackgroundResource(LinearView1).getDrawable(images[index++]); 
     if (index == images.length) 
      index = 0; 
     hand.postDelayed(run, GET_DATA_INTERVAL); 

すべてのヘルプは大apprieciatedされるだろう:Dのおかげ

EDIT

:私は取得エラーが、このライン上にあります
layout.setBackgroundResource(LinearView1).getDrawable(images[index++]); 
layout.setBackgroundResource(LinearView1).getDrawable(images[index++]); 

それは言う:-the方法getDrawable(INT)はObject型


このエラーのために定義されていません

-layoutが

を解決することはできません:それはと言いますそれ:

- レイアウトを解決できません

getDrawable(INT)はObject型

について定義されていません-the方法私はいくつかの私はこの思い付いたエラー(およびその作業を削除した後、それを最後に出てきました:)

+1

正確にどのようなエラー? – Staven

+0

以下を読んでください:D私はaswerとしてコードを受け入れるようです;) – Bercik

+0

@Albert:あなたの質問に追加する追加情報がある場合は、回答を追加する代わりに質問を編集してください。あなたの質問に答えないので、あなたが追加したのは「答え」ではありません。 –

答えて

1

助けてください):

public class CookBookActivity extends Activity { /**アクティビティが初めて作成されたときに呼び出されます。 */

private static final long GET_DATA_INTERVAL = 1000; 
int images[] = {R.drawable.omletherb1,R.drawable.smothie1}; 
int index = 0; 
LinearLayout img; 
Handler hand = new Handler(); 
private LinearLayout layout; 

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    this.setContentView(R.layout.main); 
    layout = (LinearLayout)findViewById(R.layout.main); 
    hand.postDelayed(run, GET_DATA_INTERVAL); 

    Typeface tf2 = Typeface.createFromAsset(getAssets(), 
      "fonts/BPreplay.otf"); 
    TextView tv2 = (TextView) findViewById(R.id.textView2); 
    tv2.setTypeface(tf2); 


    Typeface tf = Typeface.createFromAsset(getAssets(), 
      "fonts/BPreplay.otf"); 
    TextView tv = (TextView) findViewById(R.id.textView1); 
    tv.setTypeface(tf); 


    Button mainNext = (Button) findViewById(R.id.nextScreen1); 
    mainNext.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      Intent i = new Intent(); 
      i.setClassName("com.unKnown.cookbook", "com.unKnown.cookbook.screen1"); 
      startActivity(i); 

     } 
    }); 
} 

Runnable run = new Runnable() { 
    public void run() { 
     layout.setBackgroundDrawable(getDrawable(index++)); 
     if (index == images.length) 
      index = 0; 
     hand.postDelayed(run, GET_DATA_INTERVAL); 

    } 
}; 

protected Drawable getDrawable(int i) { 
    // TODO Auto-generated method stub 
    return getResources().getDrawable(images[i%2]); 
} 

}

関連する問題