複数のドロウアブルがあり、それを1つのドロウアブルに結合する必要があります(たとえば、Windowsのロゴのように大きな四角形を作成するには4つの正方形)。これどうやってするの?複数のドロウアブルを結合する
8
A
答えて
14
TableLayout
またはLinearLayout
を使用してこれを行うことができます。しかし、あなたが望むものが、ImageView
の中に1つのイメージを作成する場合は、Bitmap
を手動で作成する必要があります。それは難しくありません:
Bitmap square1 = BitmapFactory.decodeResource(getResources(), R.drawable.square1);
Bitmap square2 = BitmapFactory.decodeResource(getResources(), R.drawable.square2);
Bitmap square3 = BitmapFactory.decodeResource(getResources(), R.drawable.square3);
Bitmap square4 = BitmapFactory.decodeResource(getResources(), R.drawable.square4);
Bitmap big = Bitmap.createBitmap(square1.getWidth() * 2, square1.getHeight() * 2, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(big);
canvas.drawBitmap(square1, 0, 0, null);
canvas.drawBitmap(square2, square1.getWidth(), 0, null);
canvas.drawBitmap(square3, 0, square1.getHeight(), null);
canvas.drawBitmap(square4, square1.getWidth(), square1.getHeight(), null);
私は上記のコードをコンパイルしていません。私はそれがどのようにできるかをあなたに示しています。私はまた、すべて同じ次元の正方形drawablesを持っていると仮定しています。 big
というビットマップは、好きな場所で使用できます(例:ImageView.setImageBitmap()
)。
5
LayerDrawableを使用すると、これを正確に行うことができます。
関連する問題
- 1. 複数のマッチで結合を結合する
- 2. 複数の図形をドロウアブルで表示する
- 3. 複数のテーブルを結合するSQL
- 4. 複数のテーブルを結合するブリッジテーブル
- 5. LINQ - 複数のリストを結合する
- 6. 複数のSQLテーブルを結合する
- 7. 複数のテーブルを結合するクエリ
- 8. 複数のjqueryファイルを結合する
- 9. 複数のデータフレームを結合するspark
- 10. 複数のデータフレームを結合するSpark
- 11. 複数のテーブルを結合するPostgreSQL
- 12. mySQL - 複数のテーブルを結合する
- 13. Mysql - 複数のIDで結合し、結合された列を結合する?
- 14. 複数のテーブルを複数のパラメータに結合する
- 15. 複数のレコードを表示する複数の結合
- 16. 複数のテーブルの結合
- 17. Codeigniterの複数の結合
- 18. Yii2の複数の結合
- 19. 複数のテーブルの結合?
- 20. 複数のCOUNT(*)で結合する
- 21. 複数のテーブルと結合する
- 22. 複数のテーブルに結合する
- 23. 複数のブール値に結合する
- 24. 複数の結合でオーダーする
- 25. 複数のIntStreamに結合する
- 26. 複数のデータベース結合
- 27. SQL複数の結合クエリ
- 28. BigQuery複数の結合
- 29. 複数の結合でカウント
- 30. SQLクエリ複数の結合
[Drawable Resources](http://developer.android.com/guide/topics/resources/drawable-resource.html)の開発者向けガイドです。これは、画像と実行可能なコードでこれが素晴らしい詳細です説明します。 – Sam