Чтобы изменить размер Fab и увидеть большое изображение, я сделал ниже изменения в Android API 28: - The как в
<android.support.design.widget.FloatingActionButton
android:id="@+id/profile_imageview"
android:layout_width="@dimen/design_fab_size_mini"
android:layout_height="@dimen/design_fab_size_mini"
android:layout_marginTop="10dp"
android:src="@drawable/pin_check"
app:borderWidth="0dp"
app:elevation="0dp"
app:maxImageSize="90dp" />
, где в измерениях. XML
<dimen name="design_fab_size_mini" tools:override="true">90dp</dimen>
<dimen name="design_fab_content_size" tools:override="true">58dp</dimen>
Поскольку вы упомянули, что хотите изучить темное искусство метапрограммирование, тогда я бы порекомендовал "Современный дизайн C ++" Андрея Александреску.
Мета-программирование - очень сложная область и в большинстве случаев не требуется. Как только вы узнаете об этом, очень легко подумать, что он может решить все ваши проблемы. Он станет вашим новым любимым молотком.
Я бы также рекомендовал стать очень опытным пользователем библиотек, основанных на метапрограммировании, таких как boost и loki, прежде чем добавлять их в свой собственный код.
Два разных программиста использовали метапрограммирование в частях кода, за которые я отвечаю. Пока они были опытными программистами, коммерческий продукт не должен рассматриваться как игровая площадка. Это, вероятно, худшие области нашей кодовой базы сейчас, очень сложные и очень хрупкие, особенно когда вы добавляете поддержку новых компиляторов. Если бы я отвечал за код, когда они были написаны, их бы здесь не было, теперь их слишком дорого заменять.
Короче говоря, метапрограммирование вам очень редко требуется, если вы не являетесь писателем библиотеки. И вы не можете быть писателем библиотеки, не будучи очень опытным пользователем библиотеки.
s нашей кодовой базы, очень сложной и очень хрупкой, особенно когда вы добавляете поддержку новых компиляторов. Если бы я отвечал за код, когда они были написаны, их бы здесь не было, теперь их слишком дорого заменять.Короче говоря, метапрограммирование вам очень редко требуется, если вы не являетесь писателем библиотеки. И вы не можете быть писателем библиотеки, не будучи очень опытным пользователем библиотеки.
s нашей кодовой базы, очень сложной и очень хрупкой, особенно когда вы добавляете поддержку новых компиляторов. Если бы я отвечал за код, когда они были написаны, их бы здесь не было, теперь их слишком дорого заменять.Короче говоря, метапрограммирование вам очень редко требуется, если вы не являетесь писателем библиотеки. И вы не можете быть писателем библиотеки, не будучи очень опытным пользователем библиотеки.
Если вы начинаете с C ++, исходный код boost, вероятно, не лучшее место. Здесь тусуются волшебники, занимающиеся магией шаблонов. Я думаю, что лучше начать с книг Скотта Майерса и Херба Саттерса (именно в таком порядке).
Некоторые версии книги Скотта могут быть немного устаревшими, но они все еще сильны в основе. Книги Херба стоит читать много раз, и они являются бесценным инструментом. После того, как вы ознакомитесь с обоими авторами, самое время заняться улучшением исходного кода.
Я не могу дать совет, как читать код ускорения, но я могу предложить другой совет.
Прекратите читать и начните писать :) Чтение ценно, но вы не научитесь так много, если не начнете писать код самостоятельно. Начнем с основ. Прочтите книги для начинающих и напечатайте образцы (не копируйте и не вставляйте). Вы научитесь, исправляя ошибки, возникшие в результате опечатки. Поэкспериментируйте с некоторыми из ваших собственных идей для простых приложений и двигайтесь дальше.
Начать с чтения исходного кода boost - верный способ отпугнуть себя от языка и / или закончить очень запутанным множеством вопросов.
1271] Начните с малого, двигайтесь вверх.
Начнем с основ. Прочтите книги для начинающих и напечатайте образцы (не копируйте и не вставляйте). Вы научитесь, исправляя ошибки, возникшие в результате опечатки. Поэкспериментируйте с некоторыми из ваших собственных идей для простых приложений и двигайтесь дальше.Начать с чтения исходного кода boost - верный способ отпугнуть себя от языка и / или закончить очень запутанным множеством вопросов.
1271] Начните с малого, двигайтесь вверх.
Начнем с основ. Прочтите книги для начинающих и напечатайте образцы (не копируйте и не вставляйте). Вы научитесь, исправляя ошибки, возникшие в результате опечатки. Поэкспериментируйте с некоторыми из ваших собственных идей для простых приложений и двигайтесь дальше.Начать с чтения исходного кода boost - верный способ отпугнуть себя от языка и / или закончить очень запутанным множеством вопросов.
1271] Начните с малого, двигайтесь вверх.
Я полагаю, что boost использует множество расширенных функций C ++, таких как создание шаблонов и т. Д. Библиотеки Boost, как правило, очень сложные, поскольку они пытаются следовать строгим стандартам программирования и стилям, чтобы они были совместимы с такими вещами, как STL.
Проще говоря, если вы этого не понимаете, вы, вероятно, заблуждаетесь. и если вы понимаете это, вам все равно не нужно это читать. Не прыгайте в воду, если не умеете плавать ... По сути, вы пытались плыть по водопаду.
Да, в некоторых библиотеках ускорения есть поистине ужасные вещи. Если вы хотите прочитать очень хороший исходный код, попробуйте ознакомиться с WebKit или некоторыми проектами с открытым исходным кодом Google (такими как Chrome или Protobufs).
Я предлагаю вам начать с чего-нибудь вроде «Премьеры» Липмана (другие книги для начинающих по своему вкусу). Затем, когда вы освоитесь с кодом, вы можете перейти к Хербу Саттеру, Alexandresku, чтобы расширить свой кругозор, получить более полное представление о soft dev. И САМОЕ ГЛАВНОЕ - чтобы хорошо уступить, нужно МНОГОЕ кодировать, так как это такой же навык, как и любой другой, и для его овладения требуется практика.
PS> Если вы уверены, вы можете сразу же подобрать Страуструпа вместе с другими книга (и). Я не думаю, что есть еще один источник на C ++, столь же полный, как авторы.