Я играю с DrawerLayout и столкнулся с проблемой. Обычно, когда я провожу пальцем по краю экрана, DrawerLayout застревает, пока я не уберу палец с экрана (см. Скриншот ниже).
Я не уверен, что случилось, я точно следовал примеру кода из Google SDK. Есть идеи?
И вот единственное, что у меня есть в моей FragmentActivity:
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final String[] names =
getResources().getStringArray(R.array.nav_names);
ArrayAdapter<String> adapter =
new ArrayAdapter<String>(
getActionBar().getThemedContext(),
android.R.layout.simple_list_item_1, names);
final DrawerLayout drawer =
(DrawerLayout)findViewById(R.id.drawer_layout);
final ListView navList =
(ListView) findViewById(R.id.drawer);
navList.setAdapter(adapter);
navList.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent,
View view, final int pos, long id)
{
drawer.setDrawerListener(
new DrawerLayout.SimpleDrawerListener()
{
@Override
public void onDrawerClosed(View drawerView)
{
super.onDrawerClosed(drawerView);
}
});
drawer.closeDrawer(navList);
}
});
}
РЕДАКТИРОВАТЬ: я добавляю награду за это, так как это очень старая проблема, которая существует даже сегодня с последним Android-X (образец доступен здесь). Вот как это выглядит:
Я сообщил об этом в Google ( здесь и позже здесь), но это не помогло.
Я перепробовал все существующие решения в этой теме, но ни одно из них не сработало. Если у кого-то есть хороший обходной путь для этого (все еще используя DrawerLayout или расширяя его, или что-то подобное), пожалуйста, поместите рабочее решение.