Pull to refresh
9
0
Игорь Гарин @mr_garin

User

Send message
NullPointerException в недрах Андроида не выкидывается. Скорее всего проверка у меня осталась еще с момента разработки поскольку сейчас вообще ни какого NullPointerException там быть не может.)
Я согласен что так будет лучше. Сделаю соответственно так при обновлении кода.
Спасибо за идею. Думаю с учетом вашего комментария обновленная BaseActivity будет выглядеть следующим образом:

package com.mera.detachedthemeslib;

import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;

public abstract class BaseActivity extends Activity {

	@Override
	public void onCreate(Bundle savedInstanceState) {
		onCreate(this);
		super.onCreate(savedInstanceState);
	}
	
	@Override
	public Resources getResources() {
		return getResources(this, super.getResources());
	}

	@Override
	public Resources.Theme getTheme() {
		return getTheme(this, super.getTheme());
	}
	
	public static void onCreate(Activity activity) {
		ActivityManager.setThemeForActivity(activity);
	}
	
	public static Resources getResources(Activity activity, Resources superResources) {
		return ActivityManager.getResourcesForActivity(activity, superResources);
	}
	
	public static Resources.Theme getTheme(Activity activity, Resources.Theme superTheme) {
		return ActivityManager.getThemeForActivity(activity, superTheme);
	}
}
Спасибо за замечание. Попробую исправить реализацию что бы наследование от BaseActivity (BaseListActivity, BasePreferenceActivity, ...) не было обязательным условием. Я думаю что для этого мне достаточно сделать класс ActivityManager публично доступным.
А про какой NullPointerException вы говорите? Действительно возможно просто не хватает проверки.
Да, именно для загрузки новых тем, не встроенных изначально в приложение.
Я согласен, что не-гайдлайновые интерфейсы это безусловно не есть хорошо. Но мне кажется, что существующие гайдлайны, например такие, оставляют достаточный простор для творчества и применения тем.
И да, с к сожалению ни кто не застрахован от того что его технология будет не правильно интерпретирована или не правильно применена горе-разработчиками.
Извините, но ваш вопрос мне кажется не полным. Что с нативным внешним видом не так?

Information

Rating
Does not participate
Location
Нижний Новгород, Нижегородская обл., Россия
Date of birth
Registered
Activity