не могу найти "id", когда я использую "findViewById" в Android SDK? - PullRequest
0 голосов
/ 28 августа 2011

Сначала скажу, что я совершенно новичок в программировании. Я создал кнопку в XML-файле с помощью «Графического макета». Я вижу, что идентификатор кнопок "@ + id / button1". Вот коды .xml из файла:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <Button android:text="Button"
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    </Button>
</LinearLayout>`

Когда я затем иду в файл Java и пытаюсь найти «кнопку», я набираю «findViewById (R.id)» прямо под строкой, которая говорит «setContentView (R.layout.main);» и нажмите «Ctrl + Пробел», он говорит: «Нет предложений по умолчанию». .Xml коды:

package com.soren.activies;

import android.app.Activity;
import android.os.Bundle;


 public class mail extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Button b = findViewById(R.id)


}

Надеюсь, вы поможете мне здесь, потому что я действительно могу использовать некоторую помощь. ¨ Кстати, извините за мой плохой английский.

Ответы [ 7 ]

4 голосов
/ 28 августа 2011

Код, который вы разместили ...

Button b = findViewById(R.id)

... должен быть ...

Button b = findViewById(R.id.button1);

Кроме того, убедитесь, что файл макета называется main.xml во всехв нижнем регистре.

Просто заметил бит, где вы говорите, что eclipse говорит: «нет предложений по умолчанию» - предложение Джека использовать «Очистить» и перестроить ваш проект может также решить проблему, если среда проекта испортилась (чтослучается иногда в затмении).

2 голосов
/ 28 марта 2012
Button b = findViewById(R.id) 

Вот правильный ответ.

Button b = (Button)findViewById(R.id.button1); 
1 голос
/ 04 июня 2012

Вы должны сохранить каждый файл по отдельности, прежде чем переключаться на новый файл и пытаться найти созданные вами обновления, например создание кнопки.

1 голос
/ 28 августа 2011

Я не могу точно вспомнить, какой именно, но во многих случаях вам придется сначала очистить или построить свой проект.Если вы выберете «Построить автоматически» в «Проект»> «Построить автоматически», он будет построен после сохранения, предоставляя вам доступ к автоматическому завершению R.id.

0 голосов
/ 30 июня 2017

Ваш ответ - просто

Button b=(Button) findViewById(R.id.buttonid)

, если не сработало ctrl + B

0 голосов
/ 22 июля 2013

Изменить

import android.R;

на

import YOUR_PACKAGE_NAME.R;
0 голосов
/ 28 августа 2011
 Button b = findViewById(R.id)

Должно быть

 Button b =(Button) findViewById(R.id.buttonid)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...