【问题标题】:Can Android Studio do Code Alignment?Android Studio 可以做代码对齐吗?
【发布时间】:2014-08-19 21:33:51
【问题描述】:

我想调整我的源代码以使其看起来更整洁。它提高了可读性。例如:

    dataList = new ArrayList<DrawerItem>();
    mTitle = getTitle();
    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    mDrawerList = (ListView) findViewById(R.id.left_drawer);

我想将其重新格式化为:

    dataList      = new ArrayList<DrawerItem>();
    mTitle        = getTitle();
    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    mDrawerList   = (ListView) findViewById(R.id.left_drawer);

还有这个:

    dataList.add(new DrawerItem("Message", R.drawable.ic_action_email));
    dataList.add(new DrawerItem("Likes", R.drawable.ic_action_good));
    dataList.add(new DrawerItem("Games", R.drawable.ic_action_gamepad));
    dataList.add(new DrawerItem("Lables", R.drawable.ic_action_labels));
    dataList.add(new DrawerItem("Search", R.drawable.ic_action_search));
    dataList.add(new DrawerItem("Cloud", R.drawable.ic_action_cloud));
    dataList.add(new DrawerItem("Camara", R.drawable.ic_action_camera));
    dataList.add(new DrawerItem("Video", R.drawable.ic_action_video));
    dataList.add(new DrawerItem("Groups", R.drawable.ic_action_group));
    dataList.add(new DrawerItem("Import & Export", R.drawable.ic_action_import_export));
    dataList.add(new DrawerItem("About", R.drawable.ic_action_about));
    dataList.add(new DrawerItem("Settings", R.drawable.ic_action_settings));
    dataList.add(new DrawerItem("Help", R.drawable.ic_action_help));

到这里:

    dataList.add(new DrawerItem("Message",         R.drawable.ic_action_email));
    dataList.add(new DrawerItem("Likes",           R.drawable.ic_action_good));
    dataList.add(new DrawerItem("Games",           R.drawable.ic_action_gamepad));
    dataList.add(new DrawerItem("Lables",          R.drawable.ic_action_labels));
    dataList.add(new DrawerItem("Search",          R.drawable.ic_action_search));
    dataList.add(new DrawerItem("Cloud",           R.drawable.ic_action_cloud));
    dataList.add(new DrawerItem("Camara",          R.drawable.ic_action_camera));
    dataList.add(new DrawerItem("Video",           R.drawable.ic_action_video));
    dataList.add(new DrawerItem("Groups",          R.drawable.ic_action_group));
    dataList.add(new DrawerItem("Import & Export", R.drawable.ic_action_import_export));
    dataList.add(new DrawerItem("About",           R.drawable.ic_action_about));
    dataList.add(new DrawerItem("Settings",        R.drawable.ic_action_settings));
    dataList.add(new DrawerItem("Help",            R.drawable.ic_action_help));

非常有用,这个:

    private DrawerLayout mDrawerLayout;
    private ListView mDrawerList;
    private ActionBarDrawerToggle mDrawerToggle;
    private CharSequence mDrawerTitle;
    private CharSequence mTitle;

到这里:

    private DrawerLayout          mDrawerLayout;
    private ListView              mDrawerList;
    private ActionBarDrawerToggle mDrawerToggle;
    private CharSequence          mDrawerTitle;
    private CharSequence          mTitle;

关于如何做到这一点的任何建议?

【问题讨论】:

  • 作为旁注 - 我知道这并不能回答这样的问题 - 这个“美化”代码是一种反模式,难以维护,除了在猪身上涂口红之外别无他法代码存在实际的可读性问题(如果没有,为什么还要麻烦呢?)。关于最佳实践的知名书籍通常建议不要这样做,例如。 Robert C. Martin 的“清洁代码”(请参阅​​格式/水平对齐)。
  • 嗯。这在 Vim 中是微不足道的,而且根本不花时间,而且在稍后阅读代码时有一个令人难以置信的速度优势。不幸的是,由于缺乏将 Vim 与 A​​ndroid 所需的所有其他功能集成在一起,如今整体上变得更加困难。

标签: android formatting android-studio


【解决方案1】:

尽管我同意@KonradMorawski 的观点(只是不要这样做,虽然它有时很诱人),但这可以在 Android Studio(或 IntelliJ)中完成。转到 Preferences > Code Style > Java > Wrapping and Braces > Field Groups,然后选中“Align in columns”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-08
    • 2015-03-30
    • 1970-01-01
    • 2019-08-02
    • 2015-03-29
    • 2018-10-12
    • 2015-03-10
    • 1970-01-01
    相关资源
    最近更新 更多