web-dev-qa-db-fra.com

Supprimer la barre de défilement de ScrollView dans Android

Mon Android a une vue Web principale (HTML chargé à partir d'une ressource locale). Je souhaite utiliser toute la largeur de l'écran et pouvoir faire défiler (verticalement). Ainsi, j'ai enveloppé la vue Web dans une vue de défilement dans ma présentation XML, mais quoi que je fasse, il me semble impossible de supprimer la piste de la barre de défilement du côté droit de la vue de défilement. pour changer la couleur de fond de la piste de la barre de défilement.

La piste prend environ 10dp environ, ce qui crée des problèmes pour le code HTML dans WebView. Je voudrais que la barre de défilement apparaisse en haut de la vue Web (style iPhone, si vous voyez ce que je veux dire). Maintenant, vous pouvez dire "pourquoi ne modifiez-vous pas votre code HTML pour qu'il soit 10px plus mince?", Qui est ma solution de secours, mais je préférerais de loin ne pas avoir à le faire.

Voici l'extrait pertinent de mise en page XML, vous verrez que j'ai essayé tous les attributs Android: etc que j'ai trouvés:

<ScrollView 
  Android:id="@+id/deal_web_view_holder"
  Android:layout_below="@id/clock_bar_holder"
  Android:layout_width="fill_parent" 
  Android:layout_height="fill_parent"
  Android:fillViewport="false"
  Android:fadingEdge="none"
  Android:background="#02a7e9"
  Android:scrollbars="none"
  Android:scrollbarSize="0dp"
  Android:paddingRight="0dp"
  Android:scrollbarAlwaysDrawVerticalTrack="false"
  Android:scrollbarStyle="insideOverlay"
  Android:scrollbarTrackVertical="@drawable/scrollbar_track_vertical" >
    <WebView
       Android:id="@+id/deal_web_view"
       Android:layout_width="fill_parent"
       Android:layout_height="wrap_content"/>  
</ScrollView>

Je cible la plate-forme 2.1/API lvl 7 et ne traite que des écrans de taille normale, mdp, hdp et xhdp.

100
Mick Byrne

Pour supprimer une barre de défilement d'une vue (et de sa sous-classe) via XML:

Android:scrollbars="none"

http://developer.Android.com/reference/Android/view/View.html#attr_Android:scrollbars

499
Garzahd

essayez ceci est votre activité surCreate:

ScrollView sView = (ScrollView)findViewById(R.id.deal_web_view_holder);
// Hide the Scollbar
sView.setVerticalScrollBarEnabled(false);
sView.setHorizontalScrollBarEnabled(false);

http://developer.Android.com/reference/Android/view/View.html#setVerticalScrollBarEnabled%28boolean%29

28
jkhouw1

Je suis un peu confus pourquoi vous mettez un WebView dans un ScrollView en premier lieu. Un WebView a son propre système de défilement intégré.

En ce qui concerne votre question, si vous voulez que le Scrollbar apparaisse en haut, vous pouvez utiliser

view.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY) or   
Android:scrollbarStyle="insideOverlay"
18

Résolu mon problème en ajoutant ceci à mon ListView:

Android:scrollbars="none"
5
Sam

Ces solutions ont échoué dans mon cas avec la disposition relative et si KeyBoard est ouvert Android:scrollbars="none" & Android:scrollbarStyle="insideOverlay" ne fonctionne pas non plus.

la barre d’outils est partie, mon bouton terminé est parti.

not Working

Celui-ci travaille pour moi

myScrollView.setVerticalScrollBarEnabled(false);
4
VJ Vishal Jogiya

En utilisant ci-dessous, résolu le problème

Android:scrollbarThumbVertical="@null"
2
Dhrubotara