Android interview shows your level through a control, android interview
A good blog is coming.
This article describes how I usually demonstrate my technical skills during the interview.
I am an Android attacking lion. My interview experience is quite good. As a job seeker, my interview success rate is relatively high, and I have never passed the technology. During the interview, I like to show my skills first, and then ask questions from the interviewer. This allows the interviewer to fully understand my technical level, next we will talk about salary and salary, and we will have more voices.
First, I would like to declare that I do not like to talk about business logic, project experience, and memories of specific APIs during interviews. The project and business logic you are talking about are determined by cooperation with others, and the specific business and implementation scenarios are restricted and interfered by various demanders and providers, so I think talking about this is just a joke. It's like you said to me: the program I write is very efficient !! But how can I trust you? So I will give a brief introduction to the project with the interviewer, hoping to discuss more about the Android standard mechanism.
Enter the subject:
I usually introduce it from a control and then extend it to my own knowledge structure. This control can be a ListView or a custom waterfall stream.
The following uses ListView as an example:
When talking about ListView, We can first talk about its basic usage, such as reusing ConvertView, using ViewHolder, the simplest ViewHolder method, and an efficiency ratio between different methods; the MVC idea in Android, represented by ListView, also exists.
Then we will discuss the optimization of ListView: the small aspect can be paging, batch loading (essentially the same) data.
The optimization of ListView can be divided into two types: ① thread optimization; ② memory optimization.
Thread optimization can be used to talk about Android asynchronous task mechanism and Message processing mechanism; loaning, Handler, Message internal implementation, advantages and disadvantages of AsyncTask, and implementation of custom AsyncTask.
For memory optimization, you can talk about the memory management mechanism of Android and Java, process classification, and process priority improvement. Bitmap Processing: Loading, scaling, caching, commonly used or custom image cache algorithms, how to Avoid OOM, OOM processing, global low memory status, exception handling, etc. UI layout optimization, network access optimization, and memory leakage can also be discussed; and add a variety of other details: for example, the processing of various streams, cursors, sensor cancellation, etc. can rise to the overall Android performance optimization.
You can also talk about the measurement, layout, painting, repainting, and other mechanisms of the View in Android from the perspective of the layout of each Item in the ListView or the custom enhanced ListView.
When talking about the process of drawing a View, it involves the concept of a View tree, which can be associated with the Android event distribution tree: Event distribution, processing, interception, etc. And the similarities and differences between the two trees.
Click the ListView entry to associate it with the communication between IPC processes. You can also talk about the Android component design philosophy.
When talking about many of the above mechanisms, if you can combine the Android source code, from the source code point of view, or refer to the Android source code implementation mechanism, it will be better: Tell the interviewer on the side that they love to study.
The above are basically the skills I will talk about during the interview. The whole set of skills can be discussed for almost an hour, and the interviewer will know that your level is good. Due to limited space, I did not write in detail. I just wrote a simple name to mention it. If I talk about it in detail, this article will be too long.
There are different interviewers, so the focus of the technical interview is different. A lot of knowledge is accumulated by yourself at ordinary times to spread the Internet and fish more. In addition, you need to polish yourself and make your mind mature, I can talk to different interviewers, but I cannot be unhappy because of technical differences.
A good mentality and a solid technical attitude will help you a lot!
Tomorrow is the Mid-Autumn Festival. I wish you a happy Mid-Autumn Festival !! O (partition _ partition) O
For android, I have hidden a control, controlled by a button, and clicked to display the control
Two ideas are provided: 1. Code layout. Note that the Code layout is not in XML. Click the event and re-layout.
2. It is a bit opportunistic, that is, to create an Activity and set the layout as the style you want after clicking it. it is OK to jump to this Activity after clicking Intent. The first type requires knowledge and is relatively complicated.
Why does my android simulator display only one control, that is, the last control in the layout file? I clearly wrote several controls
Let's look at your layout. If it is RelativeLayout, pay attention to modifying the distance attribute between controls, such as android: layout_below = "@ id/id-name". This control indicates that there are many other attributes under another control. You can use the layout attribute of RelativeLayout in Baidu, if you are in trouble, change the layout method to LinearLayout, which will automatically make the control layout linear, vertical and horizontal. There is also a way of layout directly in a visual layout tool without making xml Code. It is very convenient to use. The answer is very serious. Please accept it. Thank you.