2012-03-26 2 views
0

Я пытаюсь получить эффект «fadingEdge», работающий над списком Xyboard 10.1 (Xoom 2), работающим с Honeycomb 3.2.2. Как способ продемонстрировать эту проблему, я использую основной андроида список ракурса учебник, описанный здесь:Fading-edge не работает на Xyboard (Xoom 2)

http://developer.android.com/resources/tutorials/views/hello-listview.html

Модифицированный код выглядит следующим образом:

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    String[] countries = getResources().getStringArray(R.array.countries_array); 
    setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, countries)); 

    ListView lv = getListView(); 
    lv.setTextFilterEnabled(true); 
    lv.setVerticalFadingEdgeEnabled(true); 
    lv.setHorizontalFadingEdgeEnabled(true); 
    lv.setFadingEdgeLength(30); 

    lv.setOnItemClickListener(new OnItemClickListener() { 
    public void onItemClick(AdapterView<?> parent, View view, 
     int position, long id) { 
     // When clicked, show a toast with the TextView text 
     Toast.makeText(getApplicationContext(), ((TextView) view).getText(), 
      Toast.LENGTH_SHORT).show(); 
    } 
    }); 
} 

В частности, я добавил три строки в середине, которые позволяют затухать в обоих направлениях и задавать произвольную длину затухания. Я также подтвердил, что действительные и ожидаемые значения возвращаются из get-fade-power getters, так что дело не в том, что силы getters возвращаются к нулю.

Обратите внимание, что в нашем реальном приложении мы должны включить эту функциональность программно, поэтому я не настроил это поведение в XML.

Помимо Xyboard, я проверил, что этот тест класса и выцветания-краевой эффект успешно работает на любом другом устройстве я пытался, в том числе:

  • Galaxy Tab 8.9 (Honeycomb 3.1)
  • Galaxy Nexus (ICS 4.0)
  • эмулятор (Honeycomb 3,2)
+0

подтвердили, что вы встроенные приложения показывают замирания края правильно на Xyboard? – sastraxi

+0

Возможно, я просто не знаю, где искать, но я не вижу этого эффекта нигде. Я просмотрел несколько основных приложений Google (например, Youtube, Music, market и т. Д.), И я не вижу, как это исчезает. Есть ли известное местоположение приложения, где этот эффект затухания обязательно будет найден, чтобы я мог проверить? – jmv

+0

Похоже, что приложение Kindle (3.5.1) имеет черный затухающий край в нижней части основного книжного вида. В качестве дополнительной мысли кажется, что исчезающие края ушли в стиле Android-разработки, но я не хочу мешать вам делать что-то на основе вероучения. – sastraxi

ответ

4

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

Перед тем, как будет использовать следующее для того, чтобы затухающий край:

android:fadingEdge="vertical" 

Now you use:

android:requiresFadingEdge="vertical"