অ্যান্ড্রয়েডের স্ক্রোলভিউ থেকে স্ক্রোল বার ট্র্যাক সরান


104

আমার অ্যান্ড্রয়েড অ্যাপ্লিকেশনটিতে একটি মূল ওয়েবভিউ (একটি স্থানীয় উত্স থেকে লোড করা HTML) রয়েছে যা আমি স্ক্রিনের পুরো প্রস্থটি ব্যবহার করতে চাই এবং (উল্লম্বভাবে) স্ক্রোলযোগ্য করতে সক্ষম হতে চাই। সুতরাং আমি আমার লেআউট এক্সএমএলটিতে স্ক্রোলভিউতে ওয়েবউইভটি মুড়িয়ে ফেলেছি, তবে আমি যাই করুক না কেন আমি মনে করি না যে স্ক্রোল বারের ডান দিক থেকে স্ক্রোল বার ট্র্যাকটি সরাতে সক্ষম হব। আরও খারাপ, আমি স্ক্রোল বার ট্র্যাকের পটভূমির রঙ পরিবর্তন করতে সক্ষম বলে মনে হচ্ছে না।

ট্র্যাকটি প্রায় 10dp বা তার বেশি সময় নেয় যা ওয়েবভিউতে এইচটিএমএল-এর জন্য সমস্যা তৈরি করছে। আমি ওয়েব স্ক্রোলের শীর্ষে স্ক্রোল বারটি উপস্থিত হতে চাই (আইফোন শৈলী, আপনি যদি আমার অর্থ বোঝেন তবে)। এখন, আপনি বলতে পারেন "কেন আপনি আপনার এইচটিএমএলকে 10px পাতলা হিসাবে পরিবর্তন করবেন না?" এটি আমার ফ্যালব্যাক সমাধান, তবে আমার এর চেয়ে আরও বেশি দরকার নেই।

XML বিন্যাসের প্রাসঙ্গিক স্নিপেট এখানে আপনি দেখতে পাবেন যে আমি প্রতিটি অ্যান্ড্রয়েড চেষ্টা করেছি: ইত্যাদি বৈশিষ্ট্য যা আমি খুঁজে পেতে পারি:

<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>

আমি প্ল্যাটফর্ম ২.১ / এপিআই lvl 7 কে টার্গেট করছি, সত্যিই কেবল সাধারণ আকারের প্রদর্শন, এমডিপি, এইচডিপি এবং এক্সএইচডিপি নিয়ে কাজ করছি।

উত্তর:


506

এক্সএমএল এর মাধ্যমে একটি দর্শন (এবং এর উপক্লাস) থেকে একটি স্ক্রোলবার সরাতে:

android:scrollbars="none"

http://developer.android.com/reference/android/view/View.html#attr_android:scrollbars


1
এই প্রশ্ন পোস্টার জিজ্ঞাসা করা হয় না। তিনি বলেছিলেন যে সে করবেlike the scrollbar to appear on top of the web view content
সুধাংশু

11
এটি কাজ করে তবে কীবোর্ড খোলা থাকলে আপনি স্ক্রিনটি স্ক্রোল করতে সক্ষম হবেন না
ডেল্টা ক্যাপ ০৯

4
অ্যান্ড্রয়েড: স্ক্রোলবারটিহম্বার্টিকাল = "@ নাল" কীবোর্ড খোলা থাকলে আপনি যদি আপনার স্ক্রিনটি স্ক্রোল করতে চান তবে এটিকে স্ক্রোলভিউতে যুক্ত করুন :)
এটিকে স্ক্রোলভিউতে যুক্ত করুন বিশ্বাস খায়ারগোলি

29

এটি আপনার ক্রিয়েট ক্রিয়াকলাপটি চেষ্টা করুন:

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


ধন্যবাদ ... আমি এটি ইতিমধ্যে চেষ্টা করেছি (কোডে এবং বিন্যাস.এক্সএমএল), তবে এই পদ্ধতির এখনও স্ক্রোলভিউয়ের মধ্যে ওয়েবভিউজের অনুভূমিক আকারে হস্তক্ষেপ হয়েছে। সর্বোত্তম সমাধানটি ছিল উপরের সরবরাহ করা, কেবলমাত্র স্ক্রোলভিউ পুরোপুরি সরানো এবং ওয়েবভিউকে নিজেই স্ক্রোলিং পরিচালনা করতে দেওয়া। মূল সমস্যাটি কীভাবে কখন স্ক্রোলভিউ ব্যবহার করা যথাযথ হয়েছিল তা আমার বোঝার অভাব ছিল; অর্থাত্ অ্যান্ড্রয়েডের প্রতিটি দৃশ্য স্ক্রোলিং পরিচালনা করতে পারে।
মিক বাইরন

18

আমি একটু বিভ্রান্ত কেন আপনি একটি নির্বাণ হয় আছি WebViewএকটি মধ্যে ScrollViewপ্রথম স্থানে। এ WebViewএর নিজস্ব বিল্ট-ইন স্ক্রোলিং সিস্টেম রয়েছে।

আপনার আসল প্রশ্নটি সম্পর্কে, আপনি যদি Scrollbarশীর্ষে দেখাতে চান তবে আপনি ব্যবহার করতে পারেন

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

হ্যাঁ, আপনি প্রথমে স্ক্রোলভিউয়ের প্রয়োজন নেই সম্পর্কে ঠিক বলেছেন, এখানে ফিরে যাবার আগে আমি নিজেই এটি কাজ করেছিলাম। ওয়েব ভিউতে 'সেটস্ক্রোলবারস্টাইল' একটি ট্রিট কাজ করেছে, ধন্যবাদ!
মিক বাইরন

কেবল এটির প্রয়োজন নেই, কোনও স্ক্রোলভিউতে স্ক্রোলযোগ্য দর্শন থাকতে পারে না, সুতরাং আপনার ওয়েবভিউটি যাইহোক স্ক্রল না করে থাকতে পারে
একজন ব্যক্তি

3
কাজ করছে না. সঠিক উত্তরটি গারজাহদের উত্তর।
মিশাগ ইমামভারদী

3
সঠিক উত্তরটি নীচে, অ্যান্ড্রয়েড: স্ক্রোলবারস = "কিছুই নয়"
আরাব করিম

5

এটি আমার সাথে যুক্ত করে আমার সমস্যার সমাধান করেছেন ListView:

android:scrollbars="none"

4

এই সমাধানগুলি আপেক্ষিক লেআউট এবং যদি কীবোর্ড খোলা থাকে android:scrollbars="none"এবং android:scrollbarStyle="insideOverlay"কাজ না করে তবে আমার ক্ষেত্রে এটি ব্যর্থ ।

সরঞ্জামদণ্ডটি গেছে, আমার সম্পন্ন বোতামটি গেছে।

কাজ করছে না

এই আমার জন্য কাজ করছে

myScrollView.setVerticalScrollBarEnabled(false);

2

নীচে ব্যবহার করে, সমস্যার সমাধান করুন

android:scrollbarThumbVertical="@null"

পর্যালোচনা থেকে: হাই, দয়া করে কেবল উত্স কোড দিয়ে উত্তর দিবেন না। আপনার সমাধান কীভাবে কাজ করে সে সম্পর্কে একটি দুর্দান্ত বর্ণনা দেওয়ার চেষ্টা করুন। দেখুন: আমি কীভাবে ভাল উত্তর লিখব? । ধন্যবাদ
সানুন ןɐ কিউপি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.