Ответы пользователя по тегу Java
  • Как скомпилировать 1 из нескольких проектов на Android?

    @DanilinEgor
    Попробуйте такой вариант:
    1) создаёте интерфейс для работы с разными API
    public interface SocialApi {
        void post(Post post);
        void deletePost();
    }

    2) для каждой соц.сети имплементите этот интерфейс
    public class VkApi implements SocialApi {
        @Override
        void post(Post post){}
        @Override
        void deletePost(){}
    }

    3) в productFlavors прописываете
    productFlavors {
            appForVk {
                buildConfigField("com.social.myapp.SocialApi", 'api', "new com.social.myapp.vk.VkApi()")
                applicationId 'com.social.myapp.vk'
            }
            appForOk {
                buildConfigField("com.social.myapp.SocialApi", 'api', "new com.social.myapp.ok.OkApi()")
                applicationId 'com.social.myapp.ok'
            }
    }

    4) далее в BuildConfig будет сгенерировано поле
    public static final com.social.myapp.SocialApi api = new com.social.myapp.vk.VkApi();

    Через BuildConfig.api можно работать с соцсетью и реализация класса будет подменяться для разных ProductFlavor
    Ответ написан
    1 комментарий
  • Как задать координаты в CardView?

    @DanilinEgor
    Проблема в том, что CardView extends FrameLayout, т.е. по сути это FrameLayout, который при добавлении накладывает child views друг на друга. Добавьте в CardView LinearLayout и затем добавляйте новые view уже в этот LinearLayout, тогда элементы будут представлены в виде списка.
    Ответ написан