2016-11-10 2 views
1

Я добавил долю действия на ActionBar моего приложения и следовал за эти шаги:Показывать меню доли, как и других приложения на моем телефоне андроида

http://www.codewithasp.net/2016/11/share-action-provider-android-application-actionbar-appcompat-v7.html

Это показывает хорошее простое глядя меню акций на моем ActionBar. Но проблема в том, что все другие приложения на моем телефоне имеют разные общие меню, и все они похожи.

Вот как моя доля меню вид:

enter image description here

Вот как другие приложения, показывающие меню акций на устройстве

enter image description here

+1

Очевидно, что IntentChooser – Selvin

+0

, в котором устройство, тестирование? Что такое уровень апи –

+0

@Ankit Может быть его последняя версии N эффектов. Вы тестировали все версии api? – Illusion

ответ

0

Было еще одно, что нужно добавить в ответ SadClown, и я получил то, что хотел. На самом деле во время вызова startActivity вместо просто передать вашу долю намерения нам нужно вызвать Intent CHOOSER

getContext().startActivity(Intent.createChooser(sendIntent, "Share")); 

It is explained here in detail

+1

Один из самых ранних комментариев (имя парня - Selvin) по вашему вопросу сказал вам, что он выглядит как IntentChooser. Вы должны прочитать такие комментарии и ответить на них. Похоже, что Селвин - это тот парень, который предоставил вам решение, отметив ваш собственный ответ, поскольку правильный является несправедливым - вы проигнорировали парня, который дал вам правильный ответ, и вы повышаете свой собственный счет. – SadClown

+0

Да, я проверил этот комментарий, но в то время я не мог понять, как использовать IntentChooser. После использования кода я оказался настолько близок к тому, что хочу. Затем после поиска на основании этого я получил это решение выбора намерений (к тому времени я даже забыл об этом комментарии). И я не могу выбрать его комментарий как ответ, потому что это комментарий. –

+0

Все в порядке, просто не выбирайте свой собственный ответ, это неправильно делать, это как обман :) Теперь, если кто-то кажется близким к вашему ответу (например, комментарий IntentChooser), просто попросите разъяснений, все здесь желает уточнить свой комментарий. – SadClown

2

Вместо создания выпадающего меню с share options, вы должны просто вызвать совместное использование, как только вы нажмете на кнопку совместного доступа или меню. Таким образом, список возможных приложений будет показан на примере, который вы вставили.

Вот пример того, как вы могли это сделать.

Intent sendIntent = new Intent(); 
sendIntent.setAction(Intent.ACTION_SEND); 
sendIntent.putExtra(Intent.EXTRA_TEXT, content); 
sendIntent.setType("text/plain"); 
getContext().startActivity(sendIntent); 
+0

Это показывает третий макет, но это не то, что я хочу. Я хочу использовать те же функции, что и все другие приложения. Возможно, это будет зависеть от производителя, но по крайней мере он будет похож на все другие приложения на этом устройстве. –

+1

Это стандартный способ действия акции. Если бы вы могли опубликовать список приложений, которые делают это так, как вы говорите, возможно, я смогу понять это, но вы все равно не ошибетесь, если вы сделаете действие акции так, как я показал вам. – SadClown

+0

Вы правы. на самом деле другие приложения, которые я пытался, совместно использовали изображение, а также текст, поэтому было доступно другое представление. Поэтому, когда я добавил изображение в своем намерении поделиться, он начал показывать тот же общий вид, что и другие приложения. В любом случае мне не нужен образ, поэтому без изображения все в порядке. Спасибо –