NativeScript и D-pad навигация - PullRequest
       8

NativeScript и D-pad навигация

0 голосов
/ 28 сентября 2018

Как я могу использовать собственные методы Android (описано здесь: https://developer.android.com/training/tv/start/navigation внутри раздела «Включить навигацию по D-pad», например, nextFocusDown, nextFocusLeft и т. Д.)?Я использую динамическое распределение идентификаторов в своем коде.

Вот пример:

<ListView class="list-group" for="(country,index) in countries" style="height:1250px">
<v-template>
    <FlexboxLayout flexDirection="row" class="list-group-item">
        <Image  :src="country.imageSrc" class="thumb img-circle" />
        <Button :id="'button'+index" @loaded="elementLoaded(index,$event)" text="Tap Me!" class="btn btn-primary btn-active" />
        <Label  :id="'label'+index" :text="index + country.name" style="color: red; width: 60%" />
    </FlexboxLayout>
</v-template>

export default {
    data() {
        return {
            countries: [
                {
                    name: "Australia",
                    imageSrc:
                    "https://play.nativescript.org/dist/assets/img/flags/au.png"
                },
                {
                    name: "Belgium",
                    imageSrc:
                    "https://play.nativescript.org/dist/assets/img/flags/be.png"
                }
            ]
        }
    },
    methods: {
        elementLoaded(index,args) {
            args.object.nextFocusDown("button"+(index+1))
            // How can I set native Android id to this element (like a Button) with help of NativeScript?
            // Also I need to set native Android attribute like "NextFocusDown" to this element (like a Button).
        },
    }
}

1 Ответ

0 голосов
/ 01 октября 2018

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

// nativeView will be the native iOS / Android button and you are free to access any of it's native methods 
args.object.nativeView 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...