2012-07-01 3 views
1

У меня есть активность, которая действует как домашний экран. Мой вопрос в том, как я могу программным образом спросить пользователя, какой домашний экран хочет быть по умолчанию? Я не хочу, чтобы мой домашний экран был по умолчанию, но чтобы показать пользователю диалоговое окно, чтобы выбрать главный экран, который он хочет.Как отключить стандартный экран по умолчанию программно?

ответ

4

Мой ответ: как я могу программным образом спросить пользователя, какой домашний экран хочет быть по умолчанию?

Единственный способ сделать это, чтобы вызвать домашний экран, чтобы появиться, начав деятельность ACTION_MAIN/CATEGORY_HOME. Если есть выбор, между вашим начальным экраном, основным экраном устройства по умолчанию и другими, пользователь получит выборщик и сможет выбрать, какой домашний экран будет отображаться. Они также установят флажок «сделать это по умолчанию для этого действия». Однако это также приводит к тому, что пользователь переходит к выбранному начальному экрану, и им не нужно устанавливать значение по умолчанию.

Моя рекомендация будет для вас оставить это в покое. Во всяком случае, они увидят этот выбор в следующий раз, когда они нажимают кнопку HOME, и тогда они ожидают выхода на выбранный ими домашний экран.

+0

Спасибо, и я знаю, что вы имеете в виду. Я хочу, чтобы у пользователя был выбор, чтобы изменить начальный экран по умолчанию и попросил новый по умолчанию, например, когда он нажимает кнопку в моем приложении. Я хочу очистить экран по умолчанию. Когда пользователь выбирает мой домашний экран по умолчанию, я могу очистить его с помощью packagemanager и clearPackagePreferredActivities(), но когда главный экран по умолчанию - другой, я не могу. – androidGR

+0

@androidGR: «например, когда он нажимает кнопку в моем приложении. Я хочу очистить экран по умолчанию» - это невозможно. «но когда главный экран по умолчанию - другой, я не могу» - исправить. – CommonsWare