Возможно ли использование TextView Marquee в виджете, расширяющем AppWidgetProvider?

Я новичок в программировании под Android, я читал везде и не могу найти никакого решения.

Основная проблема заключается в том, что у меня есть TextView в виджете, и я хотел бы, чтобы текст прокручивался, когда текст длиннее, чем layout_width TextView. Это мой код в layout_widget.xml

    <TextView android:id="@+id/fact" android:layout_width="200dp"
            android:text="Loading... More text to see if it spans or not and want more"
            android:singleLine="true" 
            android:ellipsize="marquee"
            android:marqueeRepeatLimit ="marquee_forever"
            android:scrollHorizontally="true"
            android:focusable="true"
            android:focusableInTouchMode="true" />

. Теперь я прочитал, что мне нужно сделать TextView в фокусе, что я и сделал. Я также читал, что вам нужно установить свойство setSelected (true) , и это то место, где я изо всех сил пытаюсь установить. В моем действии по умолчанию (в AndroidManifest.xml) у меня есть следующий код.

            @Override
            public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.widget_layout);
                findViewById(R.id.fact).setSelected(true);
                setContentView(R.layout.main);
            }

Приведенная ниже часть используется для установки Content в widget_layout.xml, а затем устанавливает для свойства TextView для setSelected значение true

                setContentView(R.layout.widget_layout);
                findViewById(R.id.fact).setSelected(true);

Затем я возвращаю ContentView обратно в main.xml

Теперь я предполагаю, что это неправильно и это не так, как надо. Но мне интересно, можно ли это сделать. Я также читал, что если вы можете переопределить Framework, вы можете поместить свои собственные свойства, например, ScrollView, это тоже правильно? Также я использую SDK версии 7.

Я очень ценю помощь, которую получаю, всем спасибо!

Изменить: Удалив setContentView (R.layout.main); при запуске приложения через рисование приложения, текст прокручивается, а виджет - нет.Вид приводит меня к тому, что у виджета не может быть шатра ??? У кого-нибудь есть шатер, работающий над виджетом ??

Edit2: Решено. Вот как это делается

В xml для текстового представления вам нужен тег. В основном, я думаю, это то же самое, что и getSeleted (true);

Таким образом, код должен быть следующим:

    <TextView android:id="@+id/fact" android:layout_width="200dp"
            android:text="Loading... More text to see if it spans or not and want more"
            android:singleLine="true" 
            android:ellipsize="marquee"
            android:marqueeRepeatLimit ="marquee_forever"
            android:scrollHorizontally="true"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:duplicateParentState="true">
        <requestFocus android:focusable="true" android:focusableInTouchMode="true"
            android:duplicateParentState="true" />
    </TextView>
13
задан mattytommo 19 March 2013 в 16:18
поделиться