2016-04-11 3 views
-1

Возможно ли создать метод, который возвращает массив/список всех ресурсов R.String, используемых в активности?Получить все ресурсы String, используемые в активности

мне понадобится что-то вроде:

  1. я вхожу ActivityA
  2. я ставлю onResume

    Log.d(TAG, "Strings used in ActivityA: " + getStringsFromCurrentActivity()); 
    
  3. вхожу ActivityB и использовать этот метод снова.

  4. (...)

ответ

0

какова цель?

Вы должны определить свои строки в файле String.xml. Чем вы должны использовать

String str = getResources().getString(R.string.str_1); 

Если вы хотите, вы можете написать метод, как: (но я абсолютно не вижу необходимости делать это)

String [] getStringsForActivity(){ 
    ArrayList<String> al = new ArrayList(); 
    al.put(getResources().getString(R.string.str_1)); 
    al.put(getResources().getString(R.string.xxx)); 

    String[] ar = new String[al.size()]; 
    return al.toArray(ar); 
} 
+0

Потребность немного странно потому что мне нужно создать журнал для команды перевода. Я хотел создать тесты автоматизации, которые проходят через каждое окно в приложении, и записывает всю строку/ключ из действий, которые он проводит. Таким образом, я мог бы предоставить все строки из каждого окна с помощью снимка экрана этого окна и сделать его автоматическим. – F1sher

+0

Возможно, вы можете написать метод, в котором записывается каждый Sting, который вы тростите из String.xml. Создайте метод, который ищет строку, запишите строку и верните строку. Используйте этот метод каждый раз, когда y читает строку из xml-файла. –

+0

Ну да, это идея, но не каждая строка предоставляется методом getString(), а некоторые из них просто жестко закодированы в xml-макете активности. Я не знаю, возможна ли вещь, которую я хочу достичь, но я задал этот вопрос, потому что кто-то может удивить меня хорошим решением/подсказкой/обходным решением. – F1sher

Смежные вопросы