Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
apel70
5 / 6 / 0
Регистрация: 27.08.2015
Сообщений: 78
#1

Непонятки со шрифтами - Программирование Android

29.01.2016, 10:16. Просмотров 620. Ответов 21
Метки нет (Все метки)

Всем добра. Подскажите в чем может быть проблема?
Добавляю свой шрифт в проект, а мне "абру-кодабру" выдает

Кликните здесь для просмотра всего текста
Непонятки со шрифтами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2016, 10:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Непонятки со шрифтами (Программирование Android):

Непонятки с Адмоб - Программирование Android
Вопрос по Admob Подскажите, в чем разница между одним Refresh rate и другим

Непонятки с адаптером списка - Программирование Android
Такой вопрос - Есть ListView, есть ArrayList, для них есть довольно простой адаптер. В разметке для элемента списка есть checkBox. Все...

NDrawer c RecyclerView есть непонятки? - Программирование Android
Создал NDrawer, но в процессе появились некоторые вопросы по нему: ND состоит из нескольких групп (в каждой по несколько item'ов) ...

Проблема со шрифтами - MS Access
Нормально работающая программа написанная в А2000, с которой, для прогаммы, написанной в DOS, формирую файл DBF. В нортоне по F3,...

проблема со шрифтами - Linux
короче не знаю почему, на смонтированных дисках /hda5 /hda6.... файлы на русском выглядят не так как надо :)))) что-то со шрифтами

Глюки со шрифтами - SQL Server
В SQL Analyser (для SQL Server 7.0)запускается хранимая процедура. Конечным результатом ее является набор записей. Одно из выходных полей...

21
androbro
326 / 287 / 61
Регистрация: 17.10.2014
Сообщений: 854
29.01.2016, 10:48 #2
Цитата Сообщение от apel70 Посмотреть сообщение
Добавляю свой шрифт в проект, а мне "абру-кодабру" выдает
ну у меня тоже к примеру кракозябры выдает если открыть через встроенный эдитор, но это же не показатель того что в приложении при использовании этого шрифта тоже будет каша.
1
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,654
Завершенные тесты: 1
29.01.2016, 10:50 #3
apel70, попробуйте любой бинарный файл открыть блокнотом - то же самое будет. Но это же не значит, что он не работает.
1
apel70
5 / 6 / 0
Регистрация: 27.08.2015
Сообщений: 78
29.01.2016, 11:05  [ТС] #4
Вообще я пытаюсь добавить свой шрифт в проект, но приложение падает на стадии запуска.
Вот мой код (делал по примеру с youtube)

Java
1
2
3
Typeface typeface = Typeface.createFromAsset(getAssets(), "B.TTF");
        TextView textView = (TextView) findViewById(R.id.textView1);
        textView.setTypeface(typeface);
Тогда не понимаю почему не работает(((
0
androbro
326 / 287 / 61
Регистрация: 17.10.2014
Сообщений: 854
29.01.2016, 11:10 #5
Цитата Сообщение от apel70 Посмотреть сообщение
Typeface typeface = Typeface.createFromAsset(getAssets(), "B.TTF");
так "B.TTF" или "B52.TTF"?
0
apel70
5 / 6 / 0
Регистрация: 27.08.2015
Сообщений: 78
29.01.2016, 11:15  [ТС] #6
androbro, Без разницы я уже всяко разно попробовал, падает и все(((
0
androbro
326 / 287 / 61
Регистрация: 17.10.2014
Сообщений: 854
29.01.2016, 11:19 #7
Цитата Сообщение от apel70 Посмотреть сообщение
Без разницы я уже всяко разно попробовал, падает и все(((
ну как это без разница, у файла есть одно имя, вот по нему и надо к нему обращаться.
попробуйте переименуйте его просто на "b.ttf".
да и приведите весь код активити где устанавливаете этот шрифт.
да и лог ошибки было бы хорошо привести.
0
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,654
Завершенные тесты: 1
29.01.2016, 11:21 #8
apel70, скорее всего заработает, если расширение написать маленькими буквами и в коде задавать имя файля без расширения т.е. просто "b".
0
apel70
5 / 6 / 0
Регистрация: 27.08.2015
Сообщений: 78
29.01.2016, 11:24  [ТС] #9
androbro, Вот код:

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
[SPOILER]Typeface typeface = Typeface.createFromAsset(getAssets(), "B52.ttf");
        TextView textView = (TextView) findViewById(R.id.textView1);
        textView.setTypeface(typeface);
 
 
 
        final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        toolbar.setTitle("Карточные Фокусы");
 
 
 
 
        drawerResult = new Drawer()
                .withActivity(this)
                .withHeader(R.layout.header_isy)
                .withToolbar(toolbar)
                .addDrawerItems(
                        new PrimaryDrawerItem().withName(R.string.history)
                                .withIdentifier(1),
                        new PrimaryDrawerItem().withName(R.string.slovar)
                                .withIdentifier(2),
                        new PrimaryDrawerItem().withName(R.string.settings)
                                .withIdentifier(3)
 
                )
                .withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
                                                   @Override
                                                   public void onItemClick(AdapterView<?>
                                                                                   adapterView,
                                                                           View view,
                                                                           int position, long id,
                                                                           IDrawerItem drawerItem) {
                                                       if (drawerItem instanceof Nameable) {
 
                                                           Toast.makeText(MainActivity.this,
                                                                   MainActivity.this.getString((
                                                                           (Nameable) drawerItem).getNameRes()),
                                                                   Toast.LENGTH_SHORT).show();
                                                       }
                                                       switch (position) {
                                                           case 1:
                                                               Intent intent = new Intent(MainActivity.this, History.class);
                                                               startActivity(intent);
                                                               break;
                                                           case 2:
                                                               Intent intent1 = new Intent(MainActivity.this, Slovar.class);
                                                               startActivity(intent1);
                                                               break;
                                                           case 3:
                                                               Intent intent2 = new Intent(MainActivity.this, Settings.class);
                                                               startActivity(intent2);
                                                               break;
 
                                                       }
 
                                                       try {
                                                           Intent int_rate = new Intent(Intent.ACTION_VIEW, Uri.parse(getApplicationContext()
                                                                   .getPackageName()));
                                                           int_rate.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                                                           getApplicationContext()
                                                                   .startActivity(int_rate);
                                                       } catch (Exception ignored) {
 
                                                       }
                                                   }
 
                                               }
 
 
                ).build();
                }
 
    public void OnClick1(View view){
 
        Intent intent=new Intent(MainActivity.this, Isy.class);
        startActivity(intent);
 
    }
    public void OnClick2(View view){
 
        Intent intent=new Intent(MainActivity.this, Hard.class);
        startActivity(intent);
 
    }
    public void OnClick3(View view){
 
        Intent intent=new Intent(MainActivity.this, Volt.class);
        startActivity(intent);
    }
 
 
 
 
        @Override
    public void onBackPressed() {
 
        if (back_pressed + 2000 > System.currentTimeMillis())
            super.onBackPressed();
        else
            Toast.makeText(getBaseContext(), "Что бы выйти нажмите кнопку Назад дважды",
                    Toast.LENGTH_SHORT).show();
        back_pressed = System.currentTimeMillis();
 
        if (drawerResult.isDrawerOpen()) {
            drawerResult.closeDrawer();
 
        }
 
    }
 
    private static long back_pressed;
 
 
 
}
[/SPOILER]
Вот Log:
Кликните здесь для просмотра всего текста
01-29 14:24:23.666 23823-23823/timonpumba.myapplication E/Zygote: Zygote: error closing descriptor
libcore.io.ErrnoException: close failed: EBADF (Bad file number)
at libcore.io.Posix.close(Native Method)
at libcore.io.BlockGuardOs.close(BlockGuardOs.java:75)
at com.android.internal.os.ZygoteInit.closeServerSocket(ZygoteInit.java:224)
at com.android.internal.os.ZygoteConnection.handleChildProc(ZygoteConnection.java:879)
at com.android.internal.os.ZygoteConnection.runOnce(ZygoteConnection.java:242)
at com.android.internal.os.ZygoteInit.runSelectLoop(ZygoteInit.java:704)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640)
at dalvik.system.NativeStart.main(Native Method)
01-29 14:24:23.950 23823-23823/timonpumba.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
Process: timonpumba.myapplication, PID: 23823
java.lang.RuntimeException: Unable to start activity ComponentInfo{timonpumba.myapplication/timonpumba.myapplication.MainActivity}: java.lang.RuntimeException: native typeface cannot be made
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2338)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:5292)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:828)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:644)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.RuntimeException: native typeface cannot be made
at android.graphics.Typeface.<init>(Typeface.java:175)
at android.graphics.Typeface.createFromAsset(Typeface.java:149)
at timonpumba.myapplication.MainActivity.onCreate(MainActivity.java:28)
at android.app.Activity.performCreate(Activity.java:5264)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2302)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)*
at android.app.ActivityThread.access$800(ActivityThread.java:151)*
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)*
at android.os.Handler.dispatchMessage(Handler.java:110)*
at android.os.Looper.loop(Looper.java:193)*
at android.app.ActivityThread.main(ActivityThread.java:5292)*
at java.lang.reflect.Method.invokeNative(Native Method)*
at java.lang.reflect.Method.invoke(Method.java:515)*
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:828)*
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:644)*
at dalvik.system.NativeStart.main(Native Method)*
0
androbro
326 / 287 / 61
Регистрация: 17.10.2014
Сообщений: 854
29.01.2016, 11:32 #10
apel70, так что пробуйте переименовать шрифт в нижний регистр, да и цифры тоже можно удалить.
да и папку "fonts" не мешало бы завести по всем правилам.
1
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,654
Завершенные тесты: 1
29.01.2016, 11:38 #11
Цитата Сообщение от apel70 Посмотреть сообщение
native typeface cannot be made
Можно загуглить ошибку, там по первой ссылке есть несколько вариантов решения.
1
androbro
326 / 287 / 61
Регистрация: 17.10.2014
Сообщений: 854
29.01.2016, 11:42 #12
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Можно загуглить ошибку, там по первой ссылке есть несколько вариантов решения.
да кстати качнул шрифт, тоже такая же ошибка, мб просто андроид его не переваривает
1
apel70
5 / 6 / 0
Регистрация: 27.08.2015
Сообщений: 78
29.01.2016, 11:48  [ТС] #13
androbro, Спасибо за советы, но не работает(
Может дело в этом?
Кликните здесь для просмотра всего текста
Caused by: java.lang.RuntimeException: native typeface cannot be made
at android.graphics.Typeface.<init>(Typeface.java:175)
at android.graphics.Typeface.createFromAsset(Typeface.java:149)
at timonpumba.myapplication.MainActivity.onCreate(MainActivity.java:29)
at android.app.Activity.performCreate(Activity.java:5264)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2302)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)*
at android.app.ActivityThread.access$800(ActivityThread.java:151)*
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)*
at android.os.Handler.dispatchMessage(Handler.java:110)*
at android.os.Looper.loop(Looper.java:193)*
at android.app.ActivityThread.main(ActivityThread.java:5292)*
at java.lang.reflect.Method.invokeNative(Native Method)*
at java.lang.reflect.Method.invoke(Method.java:515)*
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:828)*
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:644)*
at dalvik.system.NativeStart.main(Native Method)*
0
androbro
326 / 287 / 61
Регистрация: 17.10.2014
Сообщений: 854
29.01.2016, 11:51 #14
Цитата Сообщение от apel70 Посмотреть сообщение
Может дело в этом?
ну так дело в этом. Spelcrawler же написал уже.
1
apel70
5 / 6 / 0
Регистрация: 27.08.2015
Сообщений: 78
29.01.2016, 11:52  [ТС] #15
Цитата Сообщение от androbro Посмотреть сообщение
мб просто андроид его не переваривает
C другими шрифтами та же петрушка
0
29.01.2016, 11:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2016, 11:52
Привет! Вот еще темы с ответами:

Косяк со шрифтами - HTML, CSS
Закинул на хост свёрстанное и полетело всё.... Что можно сделать в моём случаи?? направьте кто нибудь на гайд какой нибудь про вёрстку...

Работа с шрифтами - XNA
Поясните в кратце как работать со шрифтами, какое расширение должен иметь шрифт и нужно ли его подгружать. Задача например есть...

Работа с шрифтами(полная) - Visual Basic .NET
Доброго дня! Как в vb.net можно: получить список системных шрифтов открыть файл шрифта и без установки данного шрифта получить...

Управление шрифтами в приложении - C#
Привет! Все знают как в ВЕБе, если грамотно ипользовать CSS, можно поменять все шрифты одной строчкой. body style=&quot;font:...&quot; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru