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.
Related
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 2 years ago.
Improve this question
I'm learning Android development in Android Studio. My question is that what is the best way to make UI for Android apps. I'm right now learning coding to make the UI of apps. It's a hard or time-consuming process but I find that this is another way to create UI of Android apps via the drag or drop feature. So, I want to ask which one should I choose to create UI of apps ?? because I want to work as an Android Develper.
Thanks yo
Drag and drop are useful when you don't have to make a good/presentable UI, You are just in hurry to check/test something. But for long term or to make reliable UI, I'd suggest you go with writing code in XML. This helps you understand the concept of how things stick to each other and you can make changes easily when needed. All the best.
Try Constraint Layout ,It's very flexible and will help you understand the concept of constraints.
If you want to become an Android developer, you have to practice a lot, the drag and drop feature on the xml layout design is very useful, but it would be nice if you also have to master the attributes and components in the Android layout. It depends on usage, but I would rather write the xml code directly to better understand the points of layout on Android. Keep learning and keep up spirit
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 3 years ago.
Improve this question
I am a Python programmer and I want to learn android app development. My million dollar question is, do I really need to learn xml? Can't I just use the design tab in android studio and drag n drop elements to make the design?
Well well it should be noted that whether any technology is used in certain IDE it would be good to have some background knowledge or at least know what is it for..
Overall is not hard to learn XML at a functional level.
What is it?
A Xtensinve Markup Language which basically work with tags, it was created for be self-descriptive.
<deliveryTag>
<to>Michelle Obama</to>
<from>Barack Obama</from>
<note>Happy Birthday!</note>
<type>First Class</type>
<package>Regular Size Box</package>
</deliveryTag>
What is it for?
Designed for carry data, and have it well-organized of course.
People really loved how it simplifies the data sharing, transport and availability eventually it became one of the standards cross-platform.
Finally..
XML was designed to carry data -> it focus on what data is.
HTML was designed to display data -> it focus on how data looks
Both of above are NOT programming languages but languages for structuration.
You will have more control over your project even if you drag and drop, at some point you will note that Android Studio demands to fluently use XML in many parts of the software development cycle.
Yes you can just use drag and drop editor, all attributes can change there, but when u face with an issue, you can't find your answers in Here because all of android developers work with xml.
It's too easy to learn, don't afraid of it.
You can use the design tab for constructing the application UI, But for complex design, it's not advisable.
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.
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
Google recently comes with another layout called ConstraintLayout However, I have few questions which is still very confusing.
I reviewed the talk related with this portion from google IO'16 and got an understanding that it would be really helpful as developer to create flat UI and performance would be better than any other layouts.
Questions:
1. In which case, We should use constraint layout?
2. Does introduction of ContraintLayout means that we should not use LinearLayout,RelativeLayout..etc anymore?
3. What is the efficient way to use ContraintLayout?
You probably shouldn't have been so eager to jump on your question here since IO is still going on
I suggest you go watch the session called Android Layouts: a new world (currently not available at time of writing) where they go into detail about ConstraintLayout
ConstraintLayout appears to be an easier way to create layouts without dealing with xml. Constraints layout is based off of RelativeLayout and is not meant to kill off other layouts since they are still very useful.
This being said as #CommonsWare said this is very very new and has no official documentation so its very difficult to come to a real conclusion about it. I would say it is like other layouts where it is usage is going to be based on what you want your design to look like
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 7 years ago.
Improve this question
It should be easier to use the design tab when designing an app, as you can drag and drop and it is more intuitive, but it seems many developers rather prefer to use the text tab (write the design in code).
Furthermore, in the Udacity course videos I'm currently watching they teach you to design the app using code.
Any special reasons why one is preferable to the other?
In my opinion you should omit using designing your layouts with the visual editor as much as you can. You might be tempted to use it at the beginning of your "android journey", but it won't do you any good in a long term.
Using text editor will basically make you understand layouts. How they work, how Views influence each other. If you learn that, I assure you, making a layout with the text editor will be much, much faster than using the visual designing tool.
I personally never use this tool (the visual one) for creating a layout. Sometimes I'm just peeking at the Preview window (while writing in a text editor) to see if everything goes as planned.