Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.117.186.92] |
|
Сообщ.
#1
,
|
|
|
Пробую писать под андроид, хотя бы простенькие Lines. Не могу понять, как соотносятся размеры иконок в ресурсах и точек на экране.
Код такой: public class GraphicsView extends View { public GraphicsView(Context context) { super(context); } @Override protected void onDraw(Canvas canvas) { Bitmap myBitmap; for(int i = 0; i < gameCore.numOfRows; i++) { for(int j = 0; j < gameCore.numOfRows; j++) { switch(gameCore.gameField[i][j]) { case 1: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.blue); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; case 2: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.brown); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; case 3: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.cyan); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; case 4: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.green); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; case 5: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.orange); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; case 6: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.pink); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; case 7: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.yellow); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; default: myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.blank); canvas.drawBitmap(myBitmap, gameCore.picSize * i, gameCore.picSize * j, null); break; } } } } } picSize, и, соответственно, размер иконок - 50 пикселей. В итоге выходит такой страх: Пример иконки: И второй вопрос - как мне уместить в окне приложения и canvas и элементы управления? Сейчас у меня так: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:layout_width="106dp" android:id="@+id/button1" android:layout_height="wrap_content" android:text="New game" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="24dp" android:onClick="startClick"/> </RelativeLayout> public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.main); GraphicsView myview=new GraphicsView(this); setContentView(myview); } И в итоге кнопку при запуске просто не видно. |
Сообщ.
#2
,
|
|
|
уменьшила картинки до 30х30, причем pixSize остался 50 - теперь прорисовка почти нормальная. Как же работать с png?
|
Сообщ.
#3
,
|
|
|
попробуй использовать постфикс px
Цитата p.s. пальцем в небо Must be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), mm (millimeters). |
Сообщ.
#4
,
|
|
|
SVK не, все-таки не совсем то =) вот с bmp ясно - так сколько точек, столько и пикселей. А тут есть еще разрешение..
|
Сообщ.
#5
,
|
|
|
D_Alex, что не ясно с лейаутами?
З.ы. модеры, поехали. |
Сообщ.
#6
,
|
|
|
Вуйко з полонини с лейаутами ясно, непонятно про соотношение размера пнг и итогового размера на экране
|
Сообщ.
#8
,
|
|
|
Вуйко з полонини вот оно что! спасибо большое
|