View Full Version : متوقف کردن اسکرول شدن یک HorizontalScrollView
  
meh_ham
چهارشنبه 20 دی 1391, 21:25 عصر
سلام
من یک HorizontalScrollView دارم که چندتا Button داخلش هست که با کلیک/لمس روی هر Button صدای خاصی تولید میشه. میخواستم بدونم چطور میشه اون HorizontalScrollView رو موقتا از اسکرول شدن باز داشت و ثابتش کرد؟ مثلا یه Button تعریف بشه که وقتی کاربر روش کلیک کرد، اون HorizontalScrollView دیگه اسکرول نشه و ثابت بمونه.
ممنون.
hamid_hr
پنج شنبه 21 دی 1391, 09:48 صبح
سلام 
اينو تست كردي
.setIsScrollable(false);
meh_ham
پنج شنبه 21 دی 1391, 14:08 عصر
ممنون ولی کار نکرد.
این همون قطعه کد هست که می خوام انجام بدم ولی    h_scroll.setEnabled(false); برای API12 به بالا هست... 
     Button btn_s = (Button) findViewById(R.id.button999);
        
         
         
        
         final HorizontalScrollView   h_scroll = (HorizontalScrollView) findViewById(R.id.horizontalScrollView1);
         btn_s.setOnClickListener(new OnClickListener() {
              
            @Override
              public void onClick(View v) {
                   
            
                
                h_scroll.setEnabled(false);
                
                
                
            }
            
              });
hamid_hr
پنج شنبه 21 دی 1391, 16:54 عصر
بالاخره يافتم
h_scroll.setOnTouchListener(new OnTouchListener() {
					
					@Override
					public boolean onTouch(View v, MotionEvent event) {
						// TODO Auto-generated method stub
						return true;
					}
				});
meh_ham
پنج شنبه 21 دی 1391, 20:21 عصر
hamid_hr (http://barnamenevis.org/member.php?25531-hamid_hr) ممنون ازت!
این هم کدی که من برای این کار نوشتم:
            Button btn_s = (Button) findViewById(R.id.button999);
            final HorizontalScrollView   h_scroll = (HorizontalScrollView) findViewById(R.id.horizontalScrollView1);
            btn_s.setOnClickListener(new OnClickListener() {
                 
                @Override
                  public void onClick(View v) {
                       
                       if(!return_h_scroll){
                         
                        return_h_scroll  = true;
                        
                       }    
                       else
                            return_h_scroll  = false;
                           
                }
                
                  });
             
                h_scroll.setOnTouchListener(new OnTouchListener() {
                  
                 @Override
                 public boolean onTouch(View v, MotionEvent event) {
                    
                     return return_h_scroll;
                     
                 }
             });
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.