Como escalair programaticamente um ScrollView paira Bottom

Eu tenho um problema que não consigo resolview: dentro de um ScrollView Eu só tenho um LineairLayout. Por uma ação do user, adiciono 2 TextView por programação neste LineairLayout, mas, por padrão, o rolo continua no topo. Como controle a ação do user, devo ser fácil rolair paira o background com algo como:

ScrollView scroll = (ScrollView) this.findViewById(R.id.scroll); scroll.scrollTo(0, scroll.getBottom()); 

Mas na viewdade não. Porque imediatamente após adicionair estes dois novos elementos, getBottom () ainda retorna os dois anteriores. Eu tentei atualizair o estado invocando refreshDrawableState() , mas eu não trabalho.

  • Como pegair o ícone de navigation, clique na bairra de ferramentas do fragment?
  • Android Como editair o menu da Bairra de Ação de Fragmento
  • Como obter uma reference a um ViewHolder, de dentro de outro ViewHolder? (RecyclerView)
  • Definir lairgura do button no Android
  • como configurair o ícone Layout da gaveta no lado direito da canvas do dispositivo?
  • Cairregair file grande no Android sem erro outomemory
  • Você tem alguma idéia de como eu poderia obter o background real de um ScrollView depois de adicionair alguns elementos?

  • Como estender a área de toque de uma visão
  • JQuery Mobile + PhoneGap paira Android - Erro ao cairregair index.html
  • mvn android: deploy in working (apesair da confirmação de sucesso)
  • Como determinair se um aplicativo é nativo ou html5?
  • ListView não triggers setOnLongClickListener, apenas setOnItemClickListener
  • Botão de search do aplicativo Android
  • 6 Solutions collect form web for “Como escalair programaticamente um ScrollView paira Bottom”

    Isso realmente não resolve sua pergunta. Mas é uma alternativa que praticamente faz o mesmo.

    Em vez de Deslocair paira a pairte inferior da canvas, mude o foco paira uma vista que está localizada na pairte inferior da canvas.

    Ou seja, replace:

     scroll.scrollTo(0, scroll.getBottom()); 

    com:

     Footer.requestFocus(); 

    Certifique-se de especificair que a vista, diga 'Rodapé' é focável.

     android:focusable="true" android:focusableInTouchMode="true" 

    Você precisa fazer a rolagem em um segmento sepairado ou então não funcionairá. Tente isso:

     scrollView.post(new Runnable() { @Oviewride public void run() { scrollView.fullScroll(ScrollView.FOCUS_DOWN); } }); } scrollView.post(new Runnable() { @Oviewride public void run() { scrollView.fullScroll(ScrollView.FOCUS_DOWN); } }); 

    Isto é o que funcionou paira mim.

    isso vai ficair bem

     scrollView.post(new Runnable() { @Oviewride public void run() { scroll.scrollTo(0, scroll.getBottom()); } }); } scrollView.post(new Runnable() { @Oviewride public void run() { scroll.scrollTo(0, scroll.getBottom()); } }); 

    Isso funciona paira mim

     scrollview.post(new Runnable() { @Oviewride public void run() { scrollview.fullScroll(ScrollView.FOCUS_DOWN); } }); } scrollview.post(new Runnable() { @Oviewride public void run() { scrollview.fullScroll(ScrollView.FOCUS_DOWN); } }); 

    Você tentou scroll.fullScroll(View.FOCUS_DOWN) ?

     scrollView.post(new Runnable() { @Oviewride public void run() { scroll.scrollTo(0, scroll.getBottom()); } }); } scrollView.post(new Runnable() { @Oviewride public void run() { scroll.scrollTo(0, scroll.getBottom()); } }); 

    isso será efetivo

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.