How Can I add the repertory res/layout-large with Eclipse ?
I don't find the way so if someone have the solution :)
You just create a folder called layout-large/ inside the resources folder.
I think it's File > New > Folder
You could also just copy and paste the existing layout folder and insert the new name when the Eclipse dialog pops up.
Normally, eclipse automatically generates it for you when you first create the project. Perhaps, you've initially created your project at an older api level.
Related
Sub-Folder I didn't mean the drawable-hdpi, drawable-mdpi, drawable-ldpi, etc
but #drawable\myfolder\img.png
I'm a bit concerned on customizing the folder structure in drawable similar the way we have package to structure the java files.I'm using too many images for my project and when I try to copy activity layout xml; searching for the images in drawable, I felt it boring! Does android have such feature or some wayout?
I think, currently this way exists. I also have many drawables and layouts, so tried to start from layouts and then added drawables and menus. I recommend to see Can the Android Layout folder contain subfolders? and http://alexzh.com/tutorials/how-to-store-layouts-in-different-folders-in-android-project/.
Yes, I have now new resources in new subfolders. It requires time to manage (create res folders, edit build.gradle), but a folder tree becomes more neat. Sometimes AS cannot find resources during compilation. In this case I have to create new folders and edit build.gradle. Probably after several weeks everything will be done.
UPDATE
It has worked until Android Studio updated to 3.2 (and 3.2.1). Currently if you move any drawable, layout, menu resource to another folder (and add this folder to build.gradle as written in the articles above) you cannot normally use it. Before 3.2 we could simply press Build > Rebuild Project and reference to that resource. Now they have broken this behaviour and you should press File > Invalidate caches / Restart... > Just Restart (or close and open AS) to access this drawable as usual. If you don't want to restart AS, you can use the resource, but write a path to it manually like #drawable/reset_password, AS won't hint as you type and won't draw it in Design tab.
If you use Kotlin Android extensions and reference to ids like send_button (without findViewById()) you will get so many bugs that can't imagine. If you change resources, often nothing changes in layouts until you rebuild the project. This is because Kotlin caches resources. I often forget about it and waste hours.
As far as i know, NO.
There was an interesting post on G+ with a workaround for the layout dir, that works also for the drawables dir. I guess.
All the infos are here
Android doesn't support subfolders within its predefined directories, the only thing possible is for you to create directories within the res directory
In Android Studio, I want to create the folders values-v14 values-v21 inside the res folder.
But when I tried to make it like: right click on res folder select option New >Directory, then after creating the folder, it is not visible in Android Studio. But when I select the option Show in Explorer, then it is visible.
How do I create a folder in Android Studio, so that I can change files like styles.xml, etc?
Try to switch from Android to Project as shown below
Switching from the Android view to the Project view will allow you to see the directory structure, but it is less convenient for viewing and editing Android files.
There is a better way. Don't use New > Directory.
Right click values and choose New > Values resource file.
Select Version from the list and click the >> button. Write styles as the file name and 14 as the version number and click ok. (Repeat all this for version 21.)
Android Studio will automatically create values-v14 and values-v21 directories with the new styles.xml files in them. And in your Android project view you conveniently see all three styles.xml files together.
Other directories and resource files can be similarly added.
Layout files
Language translations
You can also manage language stuff with the editor, it´s a little faster.
Instead to looking for the file from ANDROID, go to PROJECT and then look for the folder, you will find it there...
I believe this is like version control, where the folder exists, but you need a file inside in order to view it. I just ran into this, and the folders existed but didn't show up until I had a file inside of them.
I hate to think this is by design. The use-case of a developer hiding their own work-space? Collapsing makes more sense
it's so simple to find your new values-v21 or recently created..
(1) - Go to project files
(2) - app > src > main > res
(3) - if here is not visible your directory then
(4) - right click on res and select show in explorer
(5) - Go inside res here all your files are shows
(6) - Then Go inside values > copy style file from there and come back to paste inside your values-v21 folder
(7) - you are done .. go to your android studio and see your folder values-v21 is appearing.
Note :- Your folder was empty so you folder was not appear in android studio.
I am trying to create a new folder inside the /res directory
I added a new directory
The folder does not appear in the /res folder even though it exists in the finder
Case and point I tried adding the folder again and I got a message telling me it exists.
If you can suggest what I can do to fix this I'd love it!
(And yes I have restarted the program as well as my computer)
Turns out there is a selector at the top which, by default, is set to show Android. If you flick the toggle down to 'Packages' you can see your own packages.
In Android Studio you can add new directories by right clicking the resource folder in the Android view. (Don't get confused by the New Directory option.)
For example, if you want a new layout resource file and folder then right click layout and choose New > Layout resource file.
If you want a new layout-sw600dp for the activity_main.xml file then choose Smallest Screen Width from the list and click the >> button. Fill in the file name and width and click ok.
Android Studio will automatically create the layout-sw600dp directory and in the Android view you will have both layout files conveniently displayed next to each other.
It is a similar process for adding other resource directories and files (see my other example).
Clicking at TAB Android in top, select the perspective Project Files. Then u can see all folders of project.
Android 4.0
The Android view by default seems to conceal the duplicated resource type directories in the side panel.
If you want to view the duplicate resource type directories i.e. drawable for two different languages,
switch the view from "Android" to "Packages" or "Project" or "Project Files"
Browse the actual folder structure in windows and you'll see the folder. Put the same resource file found in the normal drawable folder into this new directory. Then when you go back into Android Studio you'll now see 2 files under the NORMAL \res\drawable structure. Make sure you don't look for a subfolder in Android Studio called "drawable-sw600dp" because you won't find it other than in windows explorer. What you will find in Android Studio (after you copy the resource file) is a new resource file along with your original called "jenny-web.png (sw600dp)" or something similar. This same principle resolves the same error when working with other resources like layouts.
For Android Studio 3.0, those who are following https://developer.android.com/training/basics/supporting-devices/languages.html and have encountered the same issue as the one stated in this question, you can also do the following aside from the above answers which are helpful.
Right click to the target folder (i.e. res folder) > New
Choose Android Resource File
Specify the file name, and in the Directory name field put the folder name you want to create or the existing folder you want to put the resource file.
After hitting OK, in the Project files dropdown, you will see the correct strucutre.
And in the Android dropdown, you will see it as part of the strings.xml under values folder.
This worked best for me. What I did was I right-clicked the 'app' directory and chose 'New' >> 'Android Resource File'. After that I filled in the File Name with 'strings'. Chose 'XML' as my resource type and my Directory Name was 'values-b+za+ZA'.
This created everything as I wanted it to, however, values-b+za+ZA, still didn't show in the Android view but it shows in the Package view. (The views you choose from the top dropdown.)
The difference this time is that in the Package view I can still see my new 'strings.xml' file and in the Android view I van also see the new 'strings.xml' file.
I guess android studio doesn't show custom directories in the Android view but creates like some kind of link to the true directory when working with it. I am not familiar with Android Studio at all but this did work for me. If there are more professional answers please feel free to correct me.
You most probably have the file named in Uppercase, Android Studio does not recognize file names in Uppercase, I had made this mistake a while back.
As the developer doc states:
be sure the Project window is open (select View > Tool Windows > Project)
and the Android view is selected from the drop-down list at the top of that window.
You will then be able to see all relevant project files (including new ones) in a more efficient way.
Hope it helps someone.
This is odd but in my case i had to many underscores delimiters.
When i renamed yt_search_view (2 delimiters) to yt_searchview (1 delimiter), it appear in project view where it should be. It is probably a bug. My version is Android Studio 3.2.
Also, i notice that if i add a value folder to the layout folder, it also fix the issue.
Example:
layout_control_x
--layout
----top_panel.xml
--values <--adding this empty folder fixed the problem
For complete information on how to add sub folder layouts check this.
I have many projects that have an identical activity which include identical drawable resources. In each project I have duplicated the src java file, the layout xml file and the drawable images.
Ideally I'd like to be able to have one set of these and somehow share them to the other projects. Shared folders appear to be the way to go but after setting them up I cannot figure how to reference the linked files.
Lets say, to keeps things simple, I have two projects, a Source project which contains the java code file, the layout file, and a drawable folder containing all the images I require.
The second project lets call it Destination.
In Destination I create the linked folder called "linked" to the drawable folder in Source which is then viewable in explorer. In my layout xml, how can I reference the "linked" folder and then the individual images for the SRC of imageviews?
Would it also be possible to link my identical activities java source and xml files in the same manner?
If there is another or better way to accomplish this I'd be grateful for some pointers.
thanks
I think you should package your common code and resources into a library and then use this library inside all yours projects.
What you want to do is to add a folder to your project build path.
Here's how I do it in Eclipse:
Right click on the project in the Project Explorer
Properties > Java Build Path > Source > Link Source > Choose the folder
Hope this helps (:
When I create a subfolder in the layout folder, and drag an xml file to it, the generated R file doesn't seem to show the subfolder. a) is there a way to change that b) is the file and file structure still picked up by SVN and c) so, if I do it that way, can I still just refer to the object using layout?
When I create a subfolder in the
layout folder, and drag an xml file to
it, the generated R file doesn't seem
to show the subfolder
That is because that is not supported by Android. You cannot have subfolders of resources.
PHP_Jedi's advice, though, is good (e.g., svn:ignore).
Its all automatic.
a )The generated R class only contains static integers for each item in your layout.
b) What is picked up by svn is all up to you, but I usally put the gen folder to svn:ignore
c) if you put the gen folder and the R.java into svn you could get problems since a old version of the file can be checked in/out of the respository. This will happen if you are part of a team. So, put svn:ignore on the gen folder.