পাঠ্যদর্শনটিতে পাঠ্যের জন্য ডিফল্ট রঙ কী?


89

আমি রঙটি লাল রূপে সেট করেছি এবং এর পরে আমি আবার রঙটি ডিফল্টতে সেট করতে চাই, তবে ডিফল্ট রঙ কী তা আমি জানি না, কেউ কি জানেন?

উত্তর:


88

আপনি পুরানো রঙটি সংরক্ষণ করতে পারেন এবং তারপরে এটি মূল মানটি পুনরুদ্ধার করতে ব্যবহার করতে পারেন। এখানে একটি উদাহরণ:

ColorStateList oldColors =  textView.getTextColors(); //save original colors
textView.setTextColor(Color.RED);
....
textView.setTextColor(oldColors);//restore original colors

তবে সাধারণভাবে ডিফল্ট TextViewপাঠ্যের রঙটি আপনার প্রয়োগ করা বর্তমান থিম থেকে নির্ধারিত হয় Activity


সর্বাধিক সঠিক সমাধান। পাঠ্য রঙের রাজ্যগুলি অক্ষম করুন (অক্ষম করা ইত্যাদি)
দাসার

আমার পর্যবেক্ষণ থেকে, থিম দ্বারা সংজ্ঞায়িত পাঠ্য রঙটি কোড থেকে ডায়নামিকভাবে যুক্ত টেক্সটভিউ দ্বারা উত্তরাধিকার সূত্রে প্রাপ্ত নয়। অন্ধকার / হালকা থিম নির্বিশেষে এটি সাদা রঙে উপস্থিত থাকে appears
শিওমিং

4
@ শিউমিং ব্যবহৃত প্রসঙ্গে নির্ভর করে end প্রতিটি কনস্ট্রাক্টর একটি প্রবন্ধ ব্যবহার করে এবং সেই প্রসঙ্গে একটি থিম সেট করা হয় (সাধারণত ডিফল্ট)। প্রয়োজন হলে, ব্যবহার TextView (কনটেক্সট কনটেক্সট, AttributeSet attrs, int- defStyleAttr, int- defStyleRes)
Bonatti

110

আসলে টেক্সটভিউয়ের রঙটি হ'ল:

android:textColor="@android:color/tab_indicator_text"

বা

#808080

4
এটি ডিফল্ট ট্যাব সূচক পাঠ্যের রঙ। অনেক ক্ষেত্রে এটি ডিফল্ট পাঠ্যের রঙের মতো হতে পারে তবে আমি এটির উপর নির্ভর করব না।
2col

6
খুব কাছাকাছি, তবে এই রঙটি এক নয়।
LukaszTaraszka

4
@ লক্টার ঠিক বলেছেন, আমি ফটোশপ ব্যবহার করেছি এবং রঙটি পরীক্ষা করেছি ... # 737373 অ্যান্ড্রয়েড স্টুডিওতে জুমযুক্ত এক ভিউতে পয়েন্ট পিক্সেলের নমুনা (এক পিক্সেলের নমুনা ক্ষেত্রের আকার) থেকে টেক্সটভিউ পাঠ্যের রঙ ... আমার মনে হয় যেকোন পার্টিক্যুলার অ্যাপ্লিকেশনটির প্রকৃত মান পাওয়ার জন্য আপনাকে অ্যাপের ডিফল্ট স্টাইলটি দেখতে হবে ...
me_

41

এখানে ডিফল্ট কিছু রঙ বর্ণিত আছে android.R.color

int c = getResources().getColor(android.R.color.primary_text_dark);

4
এটি এর int c = ...পরিবর্তে হওয়া উচিতColor c = ...
কেভিন ক্রুইজসেন

7
এপিআই লেভেল 23 হিসাবে, getResources().getColor(int id)এখন অবচয় করা হয়েছে ( লিঙ্কটি দেখুন )। আপনি হয় ব্যবহার করতে পারেন getResources().getColor (int id, Resources.Theme theme)বাContextCompat.getColor(contex, android.R.color.primary_text_dark)
সংক্রামিত

প্রাথমিক_পাঠ_পথটি এখন অবহিত করা হয়েছে তবে কেন ধারণা নেই :(
ফক্সকে

15

বৈশিষ্ট্যগুলি থেকে এই মানগুলি পান:

int[] attrs = new int[] { android.R.attr.textColorSecondary };
TypedArray a = getTheme().obtainStyledAttributes(R.style.AppTheme, attrs);
DEFAULT_TEXT_COLOR = a.getColor(0, Color.RED);
a.recycle();

দেখে মনে হচ্ছে এটি থিমের উপর ভিত্তি করে রঙটি যথাযথভাবে নির্বাচন করবে এবং অ্যাপটি নাইট মোডে থাকলে উদাহরণস্বরূপ আপডেট হবে।
ব্রিল প্যাপিন

বর্তমান থিমের টাইপডআরারি পেতে থিম আর্গ ব্যতীত এটিকে কল করুন: টাইপডআরএ a = getTheme ()। রচনাশৈলীপ্রাপ্ত (অনুগ্রহকারী);
পেটরসিন

থিমটি আসলে টেক্সট কালারসেকেন্ডারি ব্যবহার করা হলে এটি কেবল একটি উপযুক্ত রঙ পাবেন get যেহেতু এটি কোনও থিম বা শৈলীতে ওভাররাইড করা সম্ভব, তাই কোনও নির্দিষ্ট দর্শনের জন্য ডিফল্ট পাঠ্য রঙটি আসলে কী হবে তা নির্ধারণের এটি খুব সঠিক উপায় নয়। এছাড়াও নোট করুন যে পৃথক দর্শনগুলি এখন থিমযুক্ত হতে পারে, সুতরাং দৃশ্যের প্রসঙ্গের সাথে সম্পর্কিত থিমটি ক্রিয়াকলাপের থিমটি তার সমস্ত দর্শনের জন্য কার্যকর বলে ধরে নেওয়ার পরিবর্তে ব্যবহার করা উচিত।
লার্ন লালিবার্তে

6

থিমটিতে ডিফল্ট রয়েছে যা অ্যান্ড্রয়েড ব্যবহার করে যদি আপনি কোনও পাঠ্যের রঙ নির্দিষ্ট না করেন। এটি বিভিন্ন অ্যান্ড্রয়েড ইউআই-তে বিভিন্ন রঙের হতে পারে (উদাঃ এইচটিসি সেনস, স্যামসাং টাচউইজ ইত্যাদি)। অ্যান্ড্রয়েড একটি _darkএবং_light থিম রয়েছে, সুতরাং এগুলির জন্য ডিফল্টগুলি পৃথক (তবে ভ্যানিলা অ্যান্ড্রয়েডে উভয় ক্ষেত্রেই প্রায় কালো)। ডিভাইসগুলির মধ্যে একটি সামঞ্জস্যপূর্ণ শৈলীর জন্য আপনার প্রাথমিক পাঠ্যের রঙটি নিজেকে সংজ্ঞায়িত করা ভাল অনুশীলন।

কোডে:

getResources().getColor(android.R.color.primary_text_dark);
getResources().getColor(android.R.color.primary_text_light);

এক্সএমএলে:

android:color="@android:color/primary_text_dark"
android:color="@android:color/primary_text_light"

ভ্যানিলা অ্যান্ড্রয়েডের উল্লেখ হিসাবে গা API় থিমের পাঠ্যের রঙ হ'ল #060001এবং হালকা থিমটিতে এটি #060003API v1 থেকে। অ্যান্ড্রয়েড স্টাইলের ক্লাসটি এখানে দেখুন


আপনার শেষ লিঙ্কে বর্ণিত রঙগুলি প্রকৃতপক্ষে রঙ নয়, এগুলি কেবল android.R মানগুলি বর্ণটি দেখার জন্য ব্যবহৃত হয়। আপনি এই ডিরেক্টরিতে রঙটি সন্ধান করে এবং এই .xML ফাইলে বেস বর্ণের রেফারেন্সটি সন্ধান করে ডিফল্ট রঙগুলি সন্ধান করতে পারেন ।
অ্যালেক্স গিত্তেমিয়ার

5

আমি জানি এটি পুরানো তবে ডিফল্ট লাইট থিম, ডিফল্ট সহ আমার নিজস্ব থিম সম্পাদক অনুসারে

textPrimaryColor = #000000

এবং

textColorPrimaryDark = #757575


2

সমস্ত পরিস্থিতিতে এটি সম্ভব নাও হতে পারে তবে একই কার্যকলাপে বিদ্যমান এবং অন্য যে র্যান্ডম টেক্সটভিউয়ের মানটি আপনি অনুসন্ধান করছেন তা বহন করে কেবল কেন ব্যবহার করবেন না?

txtOk.setTextColor(txtSomeOtherText.getCurrentTextColor());

0

কোনও ডিফল্ট রঙ নেই। এর অর্থ প্রতিটি ডিভাইসের নিজস্ব থাকতে পারে।


7
কোনও ডিফল্ট রঙ নেই, কেবলমাত্র প্রতিটি অ্যান্ড্রয়েড বিতরণ সেগুলি ওভাররাইট করতে পারে
প্যাট্রিক ফ্যাভ্রে

@ for3st আপনি কি জানেন যে কেসগুলি তারা এটি পরিবর্তন করে?
অ্যান্ড্রয়েড বিকাশকারী

0

আমি বিশ্বাস করি যে ডিফল্ট রঙের পূর্ণসংখ্যার মান 16711935 (0x00FF00FF)।


12
বাহ হার্ডকডযুক্ত স্টাফ, আপনি জানেন। এটি কি সমস্ত ডিভাইসে এবং সমস্ত নির্বাচিত থিম সহ সমস্ত অ্যান্ড্রয়েড সংস্করণগুলির জন্য মূল্য ছিল ?!
জোকস

4
তাহলে অ্যান্ড্রয়েডে ডিফল্ট পাঠ্যের রঙ গোলাপী? আমি মনে করি এটি # 060001 বিকাশকারী।
প্যাট্রিক


0

আমি দেখতে পেয়েছি যে android:textColor="@android:color/secondary_text_dark"ডিফল্ট টেক্সটভিউ রঙের তুলনায় আরও ঘনিষ্ঠ ফলাফল সরবরাহ করে android:textColor="@android:color/tab_indicator_text"। আমি মনে করি আপনি যে থিমটি ব্যবহার করছেন তার উপর নির্ভর করে আপনাকে গৌণ_সেক্সট_ডार्ক / আলোর মধ্যে স্যুইচ করতে হবে


0

পরিবর্তনগুলি করার আগে আপনি মূল রঙ সঞ্চয় করতে টেক্সটভিউ.সেটট্যাগ / গেটট্যাগ ব্যবহার করতে পারেন। আমি আপনাকে অন্য ট্যাগগুলি আলাদা করতে আইডিএসএক্সএমএল অনন্য আইডি সংস্থান তৈরি করার পরামর্শ দেব।

অন্যান্য রঙে সেট করার আগে:

if (textView.getTag(R.id.txt_default_color) == null) {
    textView.setTag(R.id.txt_default_color, textView.currentTextColor)
}

ফিরে পরিবর্তন:

textView.getTag(R.id.txt_default_color) as? Int then {
    textView.setTextColor(this)
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.