0

何日も見てから、私は情報源にたどり着きました。Eclipseグラフィカルレイアウトで描画および作成されたメイン画面があります。画面上部のボタンで構成されています。ボタンの下にはimage.png領域があります。アプリの起動時に正しく表示されます。上部のボタンとボタンの下のグラフィック画像。各ボタンを押すと、画像が変更されます。ドローアブルまたはビットマップイメージのいずれかを提供できます(それを理解しました)。私は助けが必要です。私が理解していないのは、XML生成画面ボタンを使用して外部画像を表示する方法です。

私は現在多くのテストトライアルを行っていますが、私が探しているものを私に与えるものはありません。ドローアブルまたはビットマップイメージを配置R.id.imgVwMainして、ボタンで表示したいと思います。私は提供されているものに余分なコードがあることを知っています。 R.id.imgVwMainデフォルトでは、起動時に画像(つまりスプラッシュ画面)が含まれていますが、ボタンを押すと動的に置き換えたいと思います。

コードスニペット:

ImageView img=new ImageView(this);  
View image;
Drawable drawable= getImg(0);   // GETS NEW IMAGE as drawable
img.setImageDrawable(drawable); 

//setContentView(img); // when uncommented displays just the image no buttons, not what needed
//R.id.imgVwMain    // the target ID to place the new image into

image = findViewById(R.id.imgVwMain);

ImageView imageView=(ImageView)findViewById(R.id.imgVwMain);  

imageView.setImageBitmap(drawableToBitmap(drawable));

image.setImageResource(imageView);

setContentView(R.layout.main);  //of course this just displays default of the XML
4

2 に答える 2

0

おそらく、addViewを使用てimageViewを動的に追加し、同様にremoveViewを呼び出してimageViewを削除することができます。ある時点で、レイアウトパラメータも設定する必要があります。うまくいけば、これはあなたが始めるのに役立つでしょう:

myParentViewOrLayout.removeView(oldImage);

ImageView newImage = (ImageView) findViewById(R.id.imgToAdd);
//Set your layoutParams
myParentViewOrLayout.addView(newImage);
于 2012-06-09T04:24:13.020 に答える
0

次のようにonClickListenersをボタンに設定します。

Button mButton = (Button) findViewById(R.id.my_button);
mButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        ImageView ivImage = (ImageView) findViewById(R.id.imgVwMain);
        ivImage.setImageDrawable(getImg(0));
    }
});

これで、ボタンがクリックされるたびに、イメージビューの画像が好きなように設定されます。

于 2012-06-09T04:29:00.270 に答える