Форум программистов, компьютерный форум CyberForum.ru

Повторение фоновой картинки с указанием размера - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Список с разными и сложными элементами http://www.cyberforum.ru/android-dev/thread1664168.html
Здравствуйте, дорогие форумчане. Задумал я тут создать мобильный клиент для VK и у меня появились проблемы. Мне нужно отобразить список новостей. Так как их много, логично выводить их как-то в виде списка. Однако новости могут быть разными, на них должно быть несколько разных кнопок. В общем, как мне сделать список, у которого каждый элемент будет содержать несколько других компонент? Думал...
Android GreenDao ORM query метод Здравствуйте, использую для работы с БД GreenDao ORM и у меня возник вопрос: у меня есть вот примерно такой RecyclerView (см. картинку). Каждый item имеет свой id начиная с 0. Вопрос: как мне в зависимости от нажатого пункта (id) доставать нужную информацию с БД? Например когда кликнули на id 0 то перешли на второе Activity и с базы вытащили такое описание "Это описание id 0", кликнули на id1... http://www.cyberforum.ru/android-dev/thread1664122.html
Android RSS и новостное приложение
Суть:Нужно простое новостное приложние, которое грубо транслирует RSS. Скажите, как это грамотно организовать. Я начинающий и знания пока что малы. Скажите какие знания понадобятся для реализации такого приложения. Что нужно для интеграции RSS. Заранее всем очень благодарен
Получение публикаций пользователя facebook Android
Всем привет, прошу вашей помощи, в поиске решения такой задачи: необходимо получить все публикации пользователя в facebook-е, я сделал авторизацию пользователя с помощью facebook api, все проходит успешно, но ни как не могу понять как мне получить публикации? может кто-то сталкивался с такой задачей? Я понял что это можно сделать вот таким вот способом: try { final Request request =...
Android Прочитать часть файла http://www.cyberforum.ru/android-dev/thread1663980.html
Нужно открыть файл и, начиная от 4-го байта, все записать в массив byte. Такой код записывает все, но начиная с 4-го байта в массиве: InputStream is = new FileInputStream(APP_PREFERENCES_NAME); is.read(SettingsFileBytes, 4, is.available()); Пример: в файле: 0,1,2,3,4,5,6,7,8,9 в массиве должно быть: 4,5,6,7,8,9 Как это сделать?
Android Пропущенные звонки и СМС Я вывожу на экран количество пропущенных звонков и СМС, но информация выводятся только после 2-го пропущенного уведомления. Как я понял по логам, нумерация начинается с 0-я. Так ли это? Я не смог найти информацию об этом в документации, да и на форумах также пусто. А вот что еще интересно: если сделать так - cursor.getCount() + 1, то при очередном вызове onCreate вместо положенного количества... подробнее

Показать сообщение отдельно
Паблито
не спать!
1868 / 1602 / 493
Регистрация: 12.05.2014
Сообщений: 5,796
Завершенные тесты: 1
17.02.2016, 13:09     Повторение фоновой картинки с указанием размера
там эпопея с этими повторяющимися битмапами
я сделал так
1. кладем картинку в drawable, в моем примере она называется img
2. создаем кастомное вью
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.Shader;
import android.util.AttributeSet;
import android.view.View;
 
public class TiledView extends View {
 
    private final Rect rect = new Rect();
    private final Paint paint = new Paint();
    private Bitmap bitmap;
    private BitmapShader shader;
 
    public TiledView(Context context) {
        super(context);
        init();
    }
 
    public TiledView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }
 
    private void init() {
        bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.img); // img это картика которую надо натянуть по горизонтали
    }
 
    // что бы не ругался Lint, ничего стрешного, этот метод все равно вызывается только при изменении размера окна
    @SuppressLint("DrawAllocation")
    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        int width = getMeasuredWidth();
        int height = getMeasuredHeight();
        float scale = (float) height / bitmap.getHeight();
        int dstWidth = (int) (bitmap.getWidth() * scale);
        int dstHeight = (int) (bitmap.getHeight() * scale);
        final Bitmap scaledBitmap = Bitmap.createScaledBitmap(bitmap, dstWidth, dstHeight, false);
        shader = new BitmapShader(scaledBitmap, Shader.TileMode.REPEAT, Shader.TileMode.REPEAT);
        setMeasuredDimension(width, height);
    }
 
    @Override
    protected void onDraw(Canvas canvas) {
        getDrawingRect(rect);
        paint.setShader(shader);
        canvas.drawRect(rect, paint);
    }
}

3. указываем его в разметке, название проекта заменить на свое
XML
1
2
3
4
    <com.example.myapplication.TiledView
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:layout_marginTop="17dp" />
4. PROFIT
Название: img.png
Просмотров: 18

Размер: 362 байтПовторение фоновой картинки с указанием размера
 
Текущее время: 21:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru