Відповіді:
Знак питання означає, що це посилання на значення ресурсу в поточно застосованій темі. Докладніше про це див. У посібнику з Linux Linux для Android Dev або в посібнику Dev для android.com .
\?
уникає знака питання.
? дозволяє посилатися на атрибут стилю замість певного жорстко кодованого ресурсу . Докладні відомості див. У розділі "Атрибути стилю посилань" у посібнику Android Dev.
Отже, як це насправді корисно? Це має найбільш сенс при розгляді декількох тем, що містять один і той же спеціальний атрибут ресурсу .
Скажімо, у вас є теми, пов’язані з фільмами, такі як MyThemeTransformers та MyThemeHobbit, і обидва мають атрибут під назвою movieIcon . І цей атрибут movieIcon вказує на інший @drawable ресурс, скажімо, robot.png або hobbit.png, у кожному визначенні теми.
Ви можете посилатися на " ? Attr / movieIcon " де завгодно, наскільки ця тема діє (наприклад, на панелі інструментів чи діалоговому вікні чи будь-якого виду макета перегляду), і вона автоматично вказуватиме на правильну схему малювання при переключенні між темами. Вам не потрібна логіка, що залежить від теми, щоб використовувати різні малюнки. Ви просто визначаєте атрибут movieIcon для кожної теми, а Android-система піклується про інше.