Подтвердить что ты не робот

Внедрение навигации "Drilldown" в Android App UI

Я пытаюсь научиться делать вещи в Android, и я не уверен в том, как лучше всего построить интерфейс.

Я работаю над портированием приложения iPhone, в котором используются навигационные контроллеры и представления таблиц для просмотра различных разделов: в основном, кто-то касается ячейки в таблице, которая сводится к другой таблице. когда они касаются ячейки на этом столе, она сворачивается к веб-просмотру, который отображает информацию.

Я хочу сделать что-то подобное для приложения для Android, но я не знаю, как это сделать, или если у вас есть лучший способ для Android. Я выяснил, как использовать webview для моих целей, но перемещение вперед и назад в дереве таблиц неясно.

4b9b3361

Ответ 1

Итак, на iphone, когда вы говорите, сверлится, я предполагаю, что вы имеете в виду, когда пользователь прикасается к строке списка, и он сместил новое представление справа, большую часть времени он имеет панель навигации вверху дать пользователю возможность вернуться?

Способ обращения с android - это просто запуск нового действия. Таким образом, вы будете иметь свою "ListActivity" книг, когда щелкнет listItem, вы определите новое намерение, которое запустит "ListActivity" "Chapters" и т.д. Навигационная панель наверху iphone не является стандартным интерфейсом в андроиде, так как большинство людей видят выделенный "задний" ключ как способ вернуться на экран предварительного просмотра.

Вот как вы начинаете намерение, если вы этого не видели раньше:

Intent chaptersIntent = new Intent(this, Chapters.class);
this.startActivity(chaptersIntent);

Эта статья заслуживает быстрого ознакомления, так как она прекрасно описывает действия.

http://d.android.com/guide/topics/fundamentals.html

Также посмотрите версию Android TableView - ListView:

http://d.android.com/reference/android/widget/ListView.html

и ListActivity:

http://d.android.com/reference/android/app/ListActivity.html


EDIT:: Пример кода Я бы сделал это примерно так.

public class Books extends ListActivity {

private String[] mBooks = new String[]{ "Book1", "Book2", "Book3", "Book4" };

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    ArrayAdapter<String> booksAdapter = new ArrayAdapter<String>(this, 
            android.R.layout.simple_list_item_1, 
            android.R.id.text1, 
            mBooks);

    this.setListAdapter(booksAdapter);

}

@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);

    Intent mViewChaptersIntent = new Intent(this, Chapters.class);
    mViewChaptersIntent.putExtra("BookName", mBooks[position]);
    startActivity(mViewChaptersIntent);
}

}

Итак, вы переходите через идентификатор книги в качестве дополнения к намерению, а затем в своей работе с главами вы получаете это дополнительно в методе onCreate:

    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Bundle extras = getIntent().getExtras();
    if(extras != null) {
        String bookId = extras.getString("BookName");
    }
}

Наконец, убедитесь, что все новые действия добавлены в ваш файл AndroidManifest.xml:

<activity android:name=".YourClassName"
  android:label="@string/activity_name"
  >
</activity>

Надеюсь, что поможет

Ответ 2

Основной способ создания Android ui - использовать xml. Я не совсем уверен, что вы имеете в виду, когда говорите, что сверлят, но если вы хотите, чтобы он менял представления так же просто, как сделать один набор элементов xml видимым, а другой - нет. За дополнительной информацией обратитесь к страницам разработчиков.

http://developer.android.com/guide/topics/ui/index.html

Забыл упомянуть, что это тоже очень хороший новичок. http://mobiforge.com/designing/story/understanding-user-interface-android-part-1-layouts

Ответ 3

Как уже указывалось XML-путь, выполняющий макеты, является наиболее предпочтительным.

в основном, кто-то касается ячейки в стол, который сверлит до другой стол. когда они касаются клетки на этом столе он сверлит до webview, который отображает информацию.

Из того, что я понял из термина "сверла вниз", это может быть вам нужно

http://developer.android.com/guide/topics/ui/ui-events.html

Из официальных документов

Слушателем событий является интерфейс в класс View, содержащий один метод обратного вызова. Эти методы будут вызывается платформой Android, когда Вид, которому слушатель имеет был зарегистрирован пользователем взаимодействие с элементом в пользовательском интерфейсе.