Is an Action Bar indispensable? [closed] - android

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
Much importance has been placed on this UI element. And for good reason too, as it provides a standard UI element, for developers and users alike. So, please understand that I do not wish to contest its usefulness.
On Action Bar pattern: (taken from here)
It provides several key functions:
* Makes important actions prominent and accessible in a predictable way
(such as New or Search).
* Supports consistent navigation and view switching within apps.
* Reduces clutter by providing an action overflow for rarely used actions.
* Provides a dedicated space for giving your app an identity.
If you're new to writing Android apps, note that the action bar is one
of the most important design elements you can implement. Following the
guidelines described here will go a long way toward making your app's
interface consistent with the core Android apps.
The question:
Is an Action Bar indispensable? Are there functions that cannot be implemented if one chooses to forgo this pattern (may be in navigation dept.)? Would there be any platform or device specific problems?

It is not mandated in any way by the Android Platform. You can very easily accomplish many of the same things designed to be done in the ActionBar on your own (navigation, context information about your app).
You will not have any programmatic challenges doing these things without using the ActionBar.
However, this component is a very important pattern in the Android OS, so you better have a very good reason to not use it, as your app will not 'fit' in the Android ecosystem, which will be a negative user experience.
Bottom line, there is nothing mandating that you must use the ActionBar, and you can accomplish the same actions in other ways, but this is not suggested, you should use it, so your app looks like it fits in the Android ecosystem.

Related

Is it necessary to use MVVM pattern or architecture components in android for beginners in android? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I am new to android. I have already built 80% of my app without following a MVVM pattern or using android architecture components such as View Model, Livedata etc because most of the tutorials didn't follow these patterns. My code just has data models and business logic, data binding on the activity, fragments itself.
Just got confused about the fact that whether is it okay to launch an app in the old school style or I should rework with some architecture pattern?
Its ok to use any pattern you think is best for your app. There are no requirements, technical or policy wise, about how you implement your code. If you feel MVVM is right use it. If you don't, avoid it. Even Google wouldn't claim its the best for every usecase, its just another tool in the box.
Architecture components solve a bunch of complex problems. Among these are:
Code maintainability
App performance
Consistent behavior across devices and versions of Android
That last one is key in my opinion. Rolling your own architecture can lead to bugs as your app gets exposed to more and more devices after release. Devices that you just didn't see during testing.
I would not hold up your app's launch to integrate architecture components, but certainly you should consider refactoring your app where it makes sense as you update it for future releases.

Android Studio UI use design or text? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
Kind of new to programming, especially with apps
In Android Studio, which is the 'proper' way of designing the UI? The drag-and-drop or manually through code? (Design or Text)
Also, is AndroidStudio the best way to code for apps?
Sorry if its a silly question, new to this stufff
Drag and drop may make a lot of sense when combined with appropriate coding in xml. As #Rai said, it is important to learn how things work via code in xml - but I would like to add that learning things in xml will make the transition to editing views programmatically (dynamically in your java classes), much easier.
Sometimes, however, such as when you are using a constraint layout (a more advanced but very useful layout to use that improves performance in many cases), it is a lot more efficient to get the look you want in the design tab. Check out this tutorial: https://developer.android.com/training/constraint-layout/index.html
In general you should make sure you UNDERSTAND what you are doing when you are making android apps (and coding in general), because if you are just messing around in a design editor you may end up doing things that slow down your user experience and can be done more efficiently. As long as you understand what you are doing (and it is legal) doing whatever is efficient for you as a developer and for your user experience is what is 'proper' - it is an engineering disciple after all.
You should use android studio 2.3x when you are starting out. It used to be true that eclipse was used, but now Google wants you to transition to android studio.
You should not rely on drag-and-drop. Its better you know manually
what a code does before you use drag-and-drop functionality. For
me in android drag-and-drop is not that usable. You should learn all
the attribute, properties and know the relationship between views by writing it manually rather than
using 'drag-and-drop' and ask yourself at the end how UI works and
rendered.

Android Better UI Design [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
I've just recently started getting into Android development, and know about all the basic features of it such as permissions, basic UI, adapters, activities and interacting with a backend. How do I proceed if I want to further develop my UI/UX skills? Apps like Instagram and twitter have an interactive and attractive layout involving user inputs such as swipe. What's a good place to start to get more familiar with fancy layouts that are favourable to users?
Thanks in advance for any help!
I see 2 topics being discussed here: design and implementation.
Design includes UI/UX, interaction & motion.. You can find more types of design in this stackoverflow answer.
Implementation is a process of converting (usually) a static design to an interactive application. In your case you're doing this in Android. But the fancy layouts are general, not specific to Android.
Lastly, if you're interested in simply seeing some examples of Android UI and maybe their code, try this github repo
Almost everything about the layout in android is made with XML. If you want your layout to look better, you can also use different themes (either a custom one or a template one)
Editing an UI with XML also offers more possibilities than the graphical UI designer. You should get more information about designing UIs with XML on the internet.

What technology used for designing Google inbox UI [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I know its a very general question but I really keen to know and want to develop an android application with special UI (I mean a professional UI like Google Inbox app).
I just wanted to know if there is a special sort of technology used in it or it just made by relative layout and linear layout and other android UI component which known in Android SDK with java.
any kind of clue would be greatly appreciated.
The design language you're seeing is called Material Design.
The user interface elements that it may be using are RecyclerView for storing a list of information and CardView to represent individual items in the list:
<android.support.v7.widget.RecyclerView/>
<android.support.v7.widget.CardView/>
Have a look at this https://developer.android.com/training/material/lists-cards.html on how to cook up such an activity (a screen in Android).
The theming your application is not too difficult. Have a look at https://developer.android.com/training/material/theme.html
There is no specific strange technology but some principles. please take a look at this:
http://www.google.com/design/spec/material-design/introduction.html#introduction-goals
it may give you some ideas.
Certainly Google is doing some cool things, and they make good use of their own platform, but I don't believe there are major special technologies they are using just for their own apps. They just put together view hierarchies, nice animations, and nice resources, to make it look good.
Was there a particular aspect you are wondering about?

Why use the action bar? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
Customize the action bar is not very easy, and if you support the old android versions you need the compatibility library. What are the advantages and disadvantages to use a view instead of the action bar?
Well, if you've made a view that works the same and look the same as the action bar, you've actually implemented the action bar, so why bother doing it instead of just taking the code of it...
Anyway, the action bar is a very well known component over most Android apps, and it's part of the look&feel of them and of the OS itself.
doing things on your own will take a lot of time and effort, and it will have a huge chance of making the users not comfortable with using it (unless you've done something really remarkable and easy to use).
developers can always "invent the wheel" , but most of the times, it's not worth it.
The action bar is an important design element, usually at the top of each screen in an app, that provides a consistent familiar look between Android apps. It is used to provide better user interaction and experience by supporting easy navigation through tabs and drop-down lists. It also provides a space for the app or activity’s identity, thus enabling the user to know their location in the app, and easy access to the actions that can be performed.
use ActionBar instead of a View so you won't reinvent the wheel. It's not hard to customize if you use tools: http://jgilfelt.github.io/android-actionbarstylegenerator/

Categories

Resources