我有一个textview里面重写了ontouch,我在另一个自定义view中设置了这个view,并在这个view中我同样也重写了ontouch并且返回false
时间: 2024-04-22 10:28:31 浏览: 25
如果你在另一个自定义view中设置了这个view,并且在这个自定义view中也重写了ontouch并且返回false,那么当你在这个自定义view中触摸这个view时,ontouch事件将被传递到下一层的view,也就是被你设置的这个view。如果你在这个view中重写了ontouch并且返回了true,那么ontouch事件将被消费,不会再传递到下一层的view中。
相关问题
Android中在一个fragment中设置另一个fragment的textview
可以通过在父Fragment中获取子Fragment的方式来实现。具体步骤如下:
1. 在父Fragment中获取子Fragment的实例。假设子Fragment的id为childFragment。
```
ChildFragment childFragment = (ChildFragment) getChildFragmentManager().findFragmentById(R.id.childFragment);
```
2. 在父Fragment中调用子Fragment中的方法来设置TextView的值。假设子Fragment中有一个名为setText的公共方法来设置TextView的值。
```
childFragment.setText("Hello World");
```
完整的示例代码如下:
```
public class ParentFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_parent, container, false);
ChildFragment childFragment = (ChildFragment) getChildFragmentManager().findFragmentById(R.id.childFragment);
childFragment.setText("Hello World");
return view;
}
}
public class ChildFragment extends Fragment {
private TextView mTextView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_child, container, false);
mTextView = (TextView) view.findViewById(R.id.textView);
return view;
}
public void setText(String text) {
mTextView.setText(text);
}
}
```
获取ListView中的一个View中textView的文本内容,求java代码实现
可以通过以下代码获取ListView中某个View中的TextView文本内容:
```java
ListView listView = findViewById(R.id.list_view);
int position = 0; // 要获取的TextView所在的Item位置
View itemView = listView.getChildAt(position - listView.getFirstVisiblePosition());
if (itemView != null) {
TextView textView = itemView.findViewById(R.id.text_view); // text_view是你要获取的TextView的id
String text = textView.getText().toString();
// 这里的text就是你要获取的TextView的文本内容
}
```
解释一下代码:
1. 首先获取ListView控件的实例。
2. 然后指定要获取的TextView所在的Item位置,这个位置可以是任意值。
3. 通过getChildAt()方法获取该位置上的View实例,注意要减去ListView的第一个可见Item的位置,因为getChildAt()方法是根据ListView中的位置来获取View的,而不是根据Adapter中的位置。
4. 如果获取到了View实例,则通过findViewById()方法获取该View中的TextView实例。
5. 最后通过getText()方法获取TextView的文本内容,并将其转换为字符串。