android.widget.TextView.getScrollX()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(5.9k)|赞(0)|评价(0)|浏览(140)

本文整理了Java中android.widget.TextView.getScrollX()方法的一些代码示例,展示了TextView.getScrollX()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TextView.getScrollX()方法的具体详情如下:
包路径:android.widget.TextView
类名称:TextView
方法名:getScrollX

TextView.getScrollX介绍

暂无

代码示例

代码示例来源:origin: nickbutcher/plaid

private TouchableUrlSpan getPressedSpan(TextView textView, Spannable spannable, MotionEvent
    event) {
  int x = (int) event.getX();
  int y = (int) event.getY();
  x -= textView.getTotalPaddingLeft();
  y -= textView.getTotalPaddingTop();
  x += textView.getScrollX();
  y += textView.getScrollY();
  Layout layout = textView.getLayout();
  int line = layout.getLineForVertical(y);
  int off = layout.getOffsetForHorizontal(line, x);
  TouchableUrlSpan[] link = spannable.getSpans(off, off, TouchableUrlSpan.class);
  TouchableUrlSpan touchedSpan = null;
  if (link.length > 0) {
    touchedSpan = link[0];
  }
  return touchedSpan;
}

代码示例来源:origin: stackoverflow.com

myTextView.setOnTouchListener(new OnTouchListener() {
     @Override
     public boolean onTouch(View v, MotionEvent event) {
       boolean ret = false;
       CharSequence text = ((TextView) v).getText();
       Spannable stext = Spannable.Factory.getInstance().newSpannable(text);
       TextView widget = (TextView) v;
       int action = event.getAction();
       if (action == MotionEvent.ACTION_UP ||
           action == MotionEvent.ACTION_DOWN) {
         int x = (int) event.getX();
         int y = (int) event.getY();
         x -= widget.getTotalPaddingLeft();
         y -= widget.getTotalPaddingTop();
         x += widget.getScrollX();
         y += widget.getScrollY();
         Layout layout = widget.getLayout();
         int line = layout.getLineForVertical(y);
         int off = layout.getOffsetForHorizontal(line, x);
         ClickableSpan[] link = stext.getSpans(off, off, ClickableSpan.class);
         if (link.length != 0) {
           if (action == MotionEvent.ACTION_UP) {
             link[0].onClick(widget);
           }
           ret = true;
         }
       }
       return ret;
     }
   });

代码示例来源:origin: stackoverflow.com

public abstract class TextViewLinkHandler extends LinkMovementMethod {

  public boolean onTouchEvent(TextView widget, Spannable buffer, MotionEvent event) {
    if (event.getAction() != MotionEvent.ACTION_UP)
      return super.onTouchEvent(widget, buffer, event);

    int x = (int) event.getX();
    int y = (int) event.getY();

    x -= widget.getTotalPaddingLeft();
    y -= widget.getTotalPaddingTop();

    x += widget.getScrollX();
    y += widget.getScrollY();

    Layout layout = widget.getLayout();
    int line = layout.getLineForVertical(y);
    int off = layout.getOffsetForHorizontal(line, x);

    URLSpan[] link = buffer.getSpans(off, off, URLSpan.class);
    if (link.length != 0) {
      onLinkClick(link[0].getURL());
    }
    return true;
  }

  abstract public void onLinkClick(String url);
}

代码示例来源:origin: stackoverflow.com

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: hidroh/materialistic

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: stackoverflow.com

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: seven332/EhViewer

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: PrivacyApps/html-textview

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: jaydenxiao2016/AndroidFire

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: Naoki2015/CircleDemo

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: stackoverflow.com

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: armcha/AutoLinkTextView

private TouchableSpan getPressedSpan(TextView textView, Spannable spannable, MotionEvent event) {

    int x = (int) event.getX();
    int y = (int) event.getY();

    x -= textView.getTotalPaddingLeft();
    y -= textView.getTotalPaddingTop();

    x += textView.getScrollX();
    y += textView.getScrollY();

    Layout layout = textView.getLayout();
    int verticalLine = layout.getLineForVertical(y);
    int horizontalOffset = layout.getOffsetForHorizontal(verticalLine, x);

    TouchableSpan[] link = spannable.getSpans(horizontalOffset, horizontalOffset, TouchableSpan.class);
    TouchableSpan touchedSpan = null;
    if (link.length > 0) {
      touchedSpan = link[0];
    }
    return touchedSpan;
  }
}

代码示例来源:origin: stackoverflow.com

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: stackoverflow.com

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: stackoverflow.com

y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();

代码示例来源:origin: derry/delion

@Override
public Integer get(TextView view) {
  return view.getScrollX();
}

代码示例来源:origin: stackoverflow.com

x -= textView.getTotalPaddingLeft();
y -= textView.getTotalPaddingTop();
x += textView.getScrollX();
y += textView.getScrollY();

代码示例来源:origin: mtotschnig/MyExpenses

private static float convertToLocalHorizontalCoordinate(TextView view, float x) {
  x -= view.getTotalPaddingLeft();
  // Clamp the position to inside of the view.
  x = Math.max(0.0f, x);
  x = Math.min(view.getWidth() - view.getTotalPaddingRight() - 1, x);
  x += view.getScrollX();
  return x;
}

代码示例来源:origin: ImangazalievM/Bubbble

private TouchableUrlSpan getPressedSpan(TextView textView, Spannable spannable, MotionEvent
    event) {
  int x = (int) event.getX();
  int y = (int) event.getY();
  x -= textView.getTotalPaddingLeft();
  y -= textView.getTotalPaddingTop();
  x += textView.getScrollX();
  y += textView.getScrollY();
  Layout layout = textView.getLayout();
  int line = layout.getLineForVertical(y);
  int off = layout.getOffsetForHorizontal(line, x);
  TouchableUrlSpan[] link = spannable.getSpans(off, off, TouchableUrlSpan.class);
  TouchableUrlSpan touchedSpan = null;
  if (link.length > 0) {
    touchedSpan = link[0];
  }
  return touchedSpan;
}

代码示例来源:origin: QuickBlox/ChatMessagesAdapter-android

private String getLinkText(final TextView widget, final Spannable buffer, final MotionEvent event) {
    int x = (int) event.getX();
    int y = (int) event.getY();
    x -= widget.getTotalPaddingLeft();
    y -= widget.getTotalPaddingTop();
    x += widget.getScrollX();
    y += widget.getScrollY();
    Layout layout = widget.getLayout();
    int line = layout.getLineForVertical(y);
    int off = layout.getOffsetForHorizontal(line, x);
    ClickableSpan[] link = buffer.getSpans(off, off, ClickableSpan.class);
    if (link.length != 0) {
      return buffer.subSequence(buffer.getSpanStart(link[0]),
          buffer.getSpanEnd(link[0])).toString();
    }
    return buffer.toString();
  }
}

相关文章

微信公众号

最新文章

更多

TextView类方法