行灏 2021-10-24 10:26 采纳率: 0%
浏览 13
已结题

python uiautomator2 怎么循环元素呀,为什么def 等待数字出现(self):这个函数只能找到第一个,而打二字却无法发现怎么回事

import os
import uiautomator2 as u2
from adb import ADB
import time

def 封装等待数字出现(self, s):
    self.d.implicitly_wait(100)
    while True:
        try:
            a = self.d(text=s)
            if a.get_text() == s:
                print('找到:', a.get_text())
                return a.get_text()
        except:
            pass

def 等待数字出现(self):
    while 1:
        try:
            a1 = self.封装等待数字出现('一')
            print(a1)
            if a1 == '一':
                return a1
        except:
            break
        try:
            a2 = self.封装等待数字出现('二')
            print(a2)
            if a2 == '二':
                return a2
        except:
            pass

def 发现数字(self):
    if self.等待数字出现() == '一':
        ese = self.id[0](text="一").sibling(className='android.widget.ImageView')  # 找到字再找兄弟关系
        ese.long_click()  # 按下 ()里面可以写时间 如不写默认是0.5秒
        self.id[0](resourceId="com.tencent.qqlite:id/fun_btn", text='发送').click()  # 点击发送@

    elif self.等待数字出现() == '二':
        ese = self.id[0](text="二").sibling(className='android.widget.ImageView')  # 找到字再找兄弟关系
        ese.long_click()  # 按下 ()里面可以写时间 如不写默认是0.5秒
        self.id[0](resourceId="com.tencent.qqlite:id/fun_btn", text='发送').click()  # 点击发送@
        ese1 = self.id[1](text="二").sibling(className='android.widget.ImageView')  # 找到字再找兄弟关系
        ese1.long_click()  # 按下 ()里面可以写时间 如不写默认是0.5秒
        self.id[1](resourceId="com.tencent.qqlite:id/fun_btn", text='发送').click()  # 点击发送@

def 查看模式(self):
    print(11)
    
  • 写回答

1条回答 默认 最新

  • python收藏家 2021-10-25 10:07
    关注

    你等待数字出现的方法里 出现 一 二时直接return了啊 return表示返回了 函数已经结束了

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月17日
  • 创建了问题 10月24日

悬赏问题

  • ¥15 grbl为何无法移动到比复位坐标更小的坐标?
  • ¥60 怎样隐藏win7系统进程?
  • ¥15 CBF预处理数据归一化的时候报错了如下图
  • ¥15 qt 转 msvc 后 Opencv 始终打不开视频!
  • ¥15 yolo v5中labelimg的作用
  • ¥15 国赛c题2021,没有理解这一串代码的意思,这样报错该怎么解决(语言-matlab)
  • ¥15 一、执行完中断程序后如何继续运行,二、中断结束后如何跳过中断触发前的点位(LOW点不要继续运行,可以运行UP点)(关键词-程序运行)
  • ¥15 if为什么跳过if 直接执行else 中文
  • ¥200 解决登录微信老版本限制封号问题
  • ¥15 mysql中时间处理问题